我正在使用 Xcode 6.1 在 Objective-C 中为 iPhone 5 开发一个 iOS 8.1 应用程序。
当单击 UITextView
时,我有一个不可见的 UIControl
View 会在键盘上方弹出,以便用户可以从键盘上方向下滑动并关闭键盘(然后再次将 UIControl
移出 View )。这工作正常。但是,键盘上方弹出的这个 UIControl
View 覆盖了另一个 UITextView
,因此无法点击被覆盖的 TextView 。每次我尝试点击覆盖的 TextView (这是可见的,因为 UIControl
不是不透明的),没有任何反应,因为 UIControl
似乎只是在点击和不对他们做任何事情。
我的问题是,我该怎么做才能让 UIControl
简单地忽略点击(让它们直接通过以便下面的 UITextView
可以接受它们),并且还接受滑动(这样,当向下滑动时,它可以关闭键盘并移出 View )?
我已经尝试了多种解决方案,但还没有找到一种适合我想要的解决方案。
谢谢!
最佳答案
这question与你的相似。子类化您的 UIControl
并覆盖 - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
并将其 super
变体调用为将其传递给它的 View 。
关于ios - 使 UIControl 仅接受滑动手势并传递触摸/点击手势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26501405/