![](/img/trans.png)
[英]How to reload table view from another view controller via appDelegate in iOS Objective C
[英]Triggering textfield via Table View did select iOS - Objective C
在 iOS 应用程序中,我有一个表视图,其中有 2 行,其中嵌入了文本字段。
Textfield2 是一个带有 pickerview 输入的文本字段,我使用如下设置:
textField2.inputView = pickerView;
所以问题是,右侧的 textField 2 图标只是嵌入在 textfield2.rightview 中的图像,导致图像在点击时不会触发 pickerView 输入。
select 表格视图方法是否也没有被触发,因为我将文本字段设置为完全占据单元格。 因此,经过一番搜索,我发现禁用 textField2 用户交互可以触发 didSelect。
textField2.userInteractionEnabled = false;
但是,现在我不知道如何通过 didselect tableview 方法触发 textField2 pickerView 的输入。 我尝试了这行代码,但这不起作用。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"Did select row %d",indexPath.row);
if(indexPath.row == 1){
[textField2 becomeFirstResponder];
}
}
我试图搜索如何手动触发对 textField 的输入,但没有找到任何线索。 之前谢谢::)
经过一些清晰的调试后,我发现
textField2.userInteractionEnabled = false;
导致文本字段无法成为响应者。 所以这个标志的一个小解决方法是首先启用它以便编辑文本字段并在我们完成编辑后再次禁用它。 像这样的东西:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"Did select row %d",indexPath.row);
if(indexPath.row == 1){
[textField2.userInteractionEnabled = true;
[textField2 becomeFirstResponder];
}
}
- (void)donePicker {
// to enable the did select row again
[textField2.userInteractionEnabled = true;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.