我试图显示UIAlertView点击或点击UITextField iPad和IPhone。我做了一个IBAction并使用UITextField的Tap Down事件附加它。如何获取UITextField点击事件?
但其工作不正常,意味着并非总是如此,在iPhone的情况下,而不是在案例的iPad
工作- (IBAction) TopuchState
{
//function code
}
请帮助我如何能做到这一点。
我试图显示UIAlertView点击或点击UITextField iPad和IPhone。我做了一个IBAction并使用UITextField的Tap Down事件附加它。如何获取UITextField点击事件?
但其工作不正常,意味着并非总是如此,在iPhone的情况下,而不是在案例的iPad
工作- (IBAction) TopuchState
{
//function code
}
请帮助我如何能做到这一点。
尝试增加一个目标,当一个特定的文本字段开始编辑(UIControlEventEditingDidBegin
):
[textField1 addTarget:delegate action:@selector(textField1Active:) forControlEvents:UIControlEventEditingDidBegin];
谢谢它节省了我的时间。 – BSKANIA 2014-05-27 06:58:10
我很厌烦帖子询问如何通过点击文本框外面来解除键盘....感谢一堆! (我用UIControlEventAllTouchEvents) – 2017-07-12 20:22:38
我认为,如果你设置了UITextField
委托并实现方法很简单:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
那么该方法内,你可以轻松地创建和显示你UIAlertView
。
祝你好运!
正如你已经订阅是的UITextField的委托,实施此方法:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Alert Message" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil];
[alert show];
return YES;
}
连接文本字段与委托,现在调用这个功能!
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
[email protected]" ";
return YES;
}
在斯威夫特3
新增目标为特定文本字段在viewDidLoad方法
self.textField.addTarget(self, action: #selector(textFieldTouched(_:)), for: UIControlEvents.editingDidBegin)
func textFieldTouched(textField: UITextField) {
//Show AlertView
}
润色里面的事件.editingDidBegin?你试过那个吗? – 2012-04-06 14:53:14
如果您的文本框位于滚动视图内,则取消选中延迟内容触及滚动视图的检查属性。它应该工作。 – Yawar 2016-10-06 11:43:52