因此我的问题是:我创建了一个自定义 View ,一个数字小键盘,当按下按钮时显示它。当点击屏幕上的其他任何地方时,我想隐藏键盘。
我通过覆盖 touchesBegan:withEvent 解决了这个问题。然后 HitTest 告诉我是否按下了数字键盘。只要键盘没有被按下,我就会隐藏它(通过将其隐藏属性设置为 YES)。
它有效,但我不喜欢它。它不是很干净。我的另一个选择是为数字键盘设置一个 View Controller 并将其显示为模态视图 Controller 。键盘 View 将具有透明背景。我也不喜欢这种方法。
有什么想法吗?
最佳答案
一个简单的解决方案是有一个不可见的 UIButton,当小键盘出现时将其添加到 View 中,并在它被点击时随小键盘一起移除。
当然,您在 UIButton 上的点击会阻止您将该点击用于其他任何操作,因此当键盘在那里时您的界面将无法工作。
关于iphone - 当点击屏幕的另一部分时隐藏自定义 iPhone 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6281394/