【发布时间】:2012-01-13 06:02:08
【问题描述】:
这听起来可能是一个新手问题,但我是 iOS 开发新手。
平台:iPad
我有一个带有 UITextField 的 UITableView,假设它们是两个。 当按下第一个虚拟键盘时应该会出现,但是当用户点击第二个 UITextField 时,虚拟键盘应该被隐藏并且应该显示数据选择器视图。
就是这样,我是怎么做到的。
-(void) textFieldDidBeginEditing:(UITextField *)textField {
if (textField.tag == PICKER_VIEW_TAG) {
[textField resignFirstResponder];
} else {
...
}
}
-(void) textFieldDidEndEditing:(UITextField *)textField
{
if (textField.tag != PICKER_VIEW_TAG) {
...
}
}
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
if (textField.tag == PICKER_VIEW_TAG) {
[self countriesPickerView];
}
return YES;
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
if (textField.tag == PICKER_VIEW_TAG) {
[textField resignFirstResponder];
} else {
...
}
return YES;
}
所以现在的问题是,当我第一次单击第一个 UITextField 时,它会显示键盘,但是当我切换到第二个时,它不会隐藏它。为什么 ?以及如何解决这个问题?
更新:相应的 textField 没有被选中,但即发生了辞职,对吧?但是键盘没有隐藏……为什么会这样?
【问题讨论】:
-
您是否设置了 texfields 的委托并确保调用了委托方法?
textfield.delegate = self;
标签: iphone ios ipad uitextfield