Jas*_*ien 48 cocoa-touch uitableview uitextfield first-responder ios
我有一个UITextField是a的子视图UITableViewCell.
当我的视图加载时,我希望文本字段成为第一响应者.我有一个指向表格单元格中的文本字段的指针,所以要这样做我正在尝试:
[myTextField becomeFirstResponder];
Run Code Online (Sandbox Code Playgroud)
这会一直返回NO,无论何时被调用,根据文档意味着文本字段拒绝成为第一响应者...我做错了什么?
编辑:
在textfield正确地响应被触摸.它然后调出键盘.只有在以becomefirstresponder编程方式告诉它问题发生时才会这样.
我在一个文本字段中遇到了同样的问题,我将其作为子视图添加到了一个分组的表格视图单元格中 - 但在经过一些探讨之后想出了一个解决方案.
假设您已在cellForRowAtIndexPath方法中为textfield指定了标记,则可以执行以下操作:
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
myTextField = (UITextField *)[cell viewWithTag:kMyTextFieldTag];
[myTextField becomeFirstResponder];
}
Run Code Online (Sandbox Code Playgroud)
小智 5
在 - (void)viewDidLoad中调用它会起作用.
-(void)viewDidLoad{
[super viewDidLoad];
// Do any additional setup after loading the view.
[self.myTextField becomeFirstResponder]
//... any other code you need
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
68288 次 |
| 最近记录: |