当我点击UITextField时,我正在尝试打开表视图控制器。 我在我的UITextField中添加了一个push segue。但是,而不是切换到 新视图,键盘正在打开。
可能是什么问题?
答案 0 :(得分:1)
您需要查看UItapGestureRecognizer
。当用户点击textField
时,您需要在textField上添加TapGesture Recognizer。然后调用tapGestureRecognizer方法并在此处执行您想要的操作。
UITapGestureRecognizer * recog=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapped:)];
recog.numberOfTapsRequired=1;
recog.delegate=self;
[self.view addGestureRecognizer:recog];
-(void)tapped:(UIGestureRecognizer *)gesture
{
// Do what you want here
}
2)第二路是
在.h文件中添加TextField delegatei。
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
//Do what you want here..
}
尝试这个...
答案 1 :(得分:1)
@interface ViewController ()<UITextFieldDelegate>
在viewDidLoad中:
self.textField.delegate = self;
实施textFieldDidBeginEditing:(UITextField *)textField
方法:
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
//segue over here
}
答案 2 :(得分:1)
尝试实施textFieldShouldBeginEditing:
UITextViewDelegate
方法。它看起来像是:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
if (textField == myTextField) {
// Open the new ViewController here
return NO;
}
return YES;
}
您还必须设置委托:myTextField.delegate = self;