- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有 3 个 View 的水平 ScrollView 。第一个 View (最左侧)是 map View 。我想要的功能是用户只能通过从最右侧边缘滑动来进入第二个 View ,因为我希望其他手势来操作 map 。但是,从第二个和第三个 View 中,他们可以通过在 View 上的任意位置滑动来向左或向右移动。我已经搜索了如何做到这一点,并且对我的具体情况没有运气。
我不知道从哪里开始,所以如果有人能指出我正确的方向,那就太好了。
到目前为止,我已经尝试过:
在第一个 View 上禁用滚动并添加代码:
let edgeRecognizer = UIScreenEdgePanGestureRecognizer(target: firstView, action: "goToSecondView:")
edgeRecognizer.edges = .Right
func goToSecondView(){
scrollView.contentOffset = CGPoint(x: self.scrollView.contentSize.width/3, y: scrollView.contentOffset.y)
}
最佳答案
真的很简单,只需将此委托(delegate)功能放在您的UIScreenEdgePanGestureRecognizer
上即可。并设置 UIGestureRecognizerDelegate
使用 Xcode 8 和 Swift 3 :)
您需要这 3 个委托(delegate)功能。
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldBeRequiredToFailBy otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return false
}
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive press: UIPress) -> Bool {
return false
}
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return true
}
关于ios - UIScrollView 中的 UIScreenEdgePanGestureRecognizer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34712433/
我正在尝试为我的 View Controller 实现屏幕边缘平移手势。但问题是,如果尝试为两条边(UIRectEdge.left、UIRectEdge.right)添加边缘平移手势,如 let sc
我有一个 UIScreenEdgePanGestureRecognizer(作为自定义弹出手势的一部分)在 85-90% 的时间内都有效。有 10-15% 的情况是无论您滑动得多么完美,它都不会触发。
我已经成功地实现了一个 UIScreenEdgePanGestureRecognizer,并且我的方法被触发了,但是手势识别器的“边缘”属性永久设置为 UIRectEdgeNone,尽管正确的手势被识
我为屏幕边缘(左)边缘添加了一个平移手势识别器。它在纵向模式下运行良好,但在横向模式下不起作用。 override init() { super.init() //Pan Gestur
问题 我无法使用 UIScreenEdgePanGestureRecognizer 在自定义键盘扩展中识别从屏幕右边缘或左边缘的边缘滑动。我创建了一个新项目来测试这个。其他 UIGestureReco
我遇到了一个问题,我定义了一个 UIScreenEdgePanGestureRecognizer 来检测出现在我设备右边缘的平移手势,但该手势偶尔会被识别: 我有以下代码: _swipeInLeft
我使用以下代码在带有 UIScreenEdgePanGestureRecognizer 的 WebView 中前后移动: class FirstViewController: UIViewContro
我想设置一个 EdgePanGesture 以在用户从左侧或右侧滑动时更改我的 ViewController。只有一个方向,它完美地工作: func addingEdgePanDetection()
我在 UIViewController 的 viewDidLoad 中有以下代码: UIScreenEdgePanGestureRecognizer *edgeRecognizer = [[UIScr
我的应用程序有这个问题。正如您在下面的 Storyboard 屏幕上看到的那样,根 VC (ContainerViewController) 有一个 UIScrollView,并且在这个 Scroll
我有一个带有 3 个 View 的水平 ScrollView 。第一个 View (最左侧)是 map View 。我想要的功能是用户只能通过从最右侧边缘滑动来进入第二个 View ,因为我希望其他手
我正在使用 UIScreenEdgePanGestureRecognizer 来更改 View ,并且在其中一个 View 中,我可以使用 UILongPressGestureRecognizer (
当您在设置 UIScreenEdgePanGestureRecognizer 时指定 UIRectEdgeRight 等时,我试图弄清楚实际的点值是多少。 看来我不能简单地 NSLog 关于 UISc
我需要一个分页的 UIScrollView,它以 UIScreenEdgePanGestureRecognizer 的方式检测屏幕边缘的平移,而不是像 UIPanGestureRecognizer 那
我正在尝试实现一个位于主视图左侧的幻灯片菜单。通过在左侧添加一个 UIScreenEdgePanGestureRecognizer,我执行了 Slide-In-Part。这真的很棒,但现在我当然也应该
我正在尝试使用 PKRevealController,它在前 View Controller 上带有 UIPanGestureRecognizer,因此平移会显示左 View Controller 。
我的申请有问题。我想使用 UIScreenEdgePanGestureRecognizer 实现一些边缘屏幕手势。它在装有 iOS 9 的设备上运行良好,但在 iOS 8 上则不然。识别器已添加到我的
这是否可能使 UIScreenEdgePanGestureRecognizer 处理来自顶部(或底部)边缘的事件? UIScreenEdgePanGestureRecognizer *gestureR
我想将 UIScreenEdgePanGestureRecognizer 添加到 UITableView,以便我可以从右侧边缘滑动以转到 Controller 层次结构中的下一个屏幕。 这工作正常,除
我正在为侧边栏使用 SWRevealViewController,我必须为我的上一个和下一个故事使用滑动,为侧边栏使用边缘平移。 我使用 UIScreenEdgePanGestureRecognize
我是一名优秀的程序员,十分优秀!