iphone - 当点击屏幕的另一部分时隐藏自定义 iPhone 控件

标签 iphone ios uiview

因此我的问题是:我创建了一个自定义 View ,一个数字小键盘,当按下按钮时显示它。当点击屏幕上的其他任何地方时,我想隐藏键盘。

我通过覆盖 touchesBegan:withEvent 解决了这个问题。然后 HitTest 告诉我是否按下了数字键盘。只要键盘没有被按下,我就会隐藏它(通过将其隐藏属性设置为 YES)。

它有效,但我不喜欢它。它不是很干净。我的另一个选择是为数字键盘设置一个 View Controller 并将其显示为模态视图 Controller 。键盘 View 将具有透明背景。我也不喜欢这种方法。

有什么想法吗?

最佳答案

一个简单的解决方案是有一个不可见的 UIButton,当小键盘出现时将其添加到 View 中,并在它被点击时随小键盘一起移除。

当然,您在 UIButton 上的点击会阻止您将该点击用于其他任何操作,因此当键盘在那里时您的界面将无法工作。

关于iphone - 当点击屏幕的另一部分时隐藏自定义 iPhone 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6281394/

相关文章:

iphone - 在 iPhone 应用程序中计算数据使用量、语音使用量

ios - 从 TableView 推送 View Controller 后如何保持导航栏标题较大

ios - 如何在 UICollectionView 的顶部添加一个 View 以支持 objective-c 中的搜索栏或过滤器之类的东西?

ios - UIView 被缓存?

ios - 如何让UIToolbar的背景透明?

iphone - 访问ios设备设置

ios - 如果模态 ViewController 演示样式为 UIModalPresentationFormSheet,iPad 键盘将不会关闭

iphone - 从 View 1 切换到蓝牙设置......不可能吗?

ios - 在 UICollectionViewCell 中,需要在相互交叉的地方设置边框效果(Junction 类型)

iphone - NStimer——我在这里做错了什么?