在Apple的Guide to build a MealKeeper app之后,我能够创建文本字段和图像视图。将UITapGestureRecognizer
拖放到图像视图顶部后,我添加了代码以通过使文本字段退出来隐藏键盘。
当我在模拟器中运行此代码时,我首先单击文本字段,键盘出现。 然后我点击图片视图,键盘没有隐藏。
如何忽略tap
函数?
答案 0 :(得分:2)
您需要将手势添加到imageview,为您的imageview创建一个IBOutlet,并将以下内容添加到' viewDidLoad'。
let tapGestureRecognizer = UITapGestureRecognizer(target:self, action:Selector("tap:"))
imageView.userInteractionEnabled = true
imageView.addGestureRecognizer(tapGestureRecognizer)
祝你好运。
答案 1 :(得分:1)
答案 2 :(得分:0)
您可以在其上添加触摸代理并重置文本字段键盘。
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch * touch = [touches anyObject];
if(touch.phase == UITouchPhaseBegan) {
[self.myTextField resignFirstResponder];
}
}
答案 3 :(得分:0)
最新的Swift 2.3中的语法略有不同
class ViewController: UIViewController {
@IBOutlet weak var textField: UITextField!
@IBOutlet weak var imageView: UIImageView!
@IBAction func tap(sender: UITapGestureRecognizer) {
textField.resignFirstResponder()
}
override func viewDidLoad() {
super.viewDidLoad()
let tapGestureRecognizer = UITapGestureRecognizer(target:self, action:#selector(ViewController.tap(_:)))
imageView.userInteractionEnabled = true
imageView.addGestureRecognizer(tapGestureRecognizer)
}
}