这听起来可能是一个新手问题,但我是 iOS 开发新手。
平台:iPad
我有一个带有 UITextField 的 UITableView,假设它们是两个。 当按下第一个虚拟键盘时应该会出现,但是当用户点击第二个 UITextField 时,虚拟键盘应该被隐藏并且应该显示数据选择器 View 。
就是这样,我是怎么做到的。
-(void) textFieldDidBeginEditingUITextField *)textField {
if (textField.tag == PICKER_VIEW_TAG) {
[textField resignFirstResponder];
} else {
...
}
}
-(void) textFieldDidEndEditingUITextField *)textField
{
if (textField.tag != PICKER_VIEW_TAG) {
...
}
}
- (BOOL)textFieldShouldBeginEditingUITextField *)textField
{
if (textField.tag == PICKER_VIEW_TAG) {
[self countriesPickerView];
}
return YES;
}
-(BOOL)textFieldShouldReturnUITextField *)textField
{
if (textField.tag == PICKER_VIEW_TAG) {
[textField resignFirstResponder];
} else {
...
}
return YES;
}
所以现在的问题是,当我第一次单击第一个 UITextField 时,它会显示键盘,但是当我切换到第二个时,它不会隐藏它。为什么 ?以及如何解决这个问题?
更新:相应的 textField 没有被选中,但即发生了辞职,对吧?但是键盘没有隐藏……为什么会这样?
问题在于您的 textFieldShouldReturn。如果您希望它完成操作,请允许它在退出第一响应者时返回。
[textField resignFirstResponder];
return YES;
关于iphone - UITextField 上的键盘没有被解除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8386298/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |