在 UITableView 中编辑 UITextField(启用/禁用输入)?
Posted
技术标签:
【中文标题】在 UITableView 中编辑 UITextField(启用/禁用输入)?【英文标题】:Editing UITextField in UITableView (enable/disable input)? 【发布时间】:2011-01-03 12:52:32 【问题描述】:我正在尝试实现类似于 Apples Contact.app 的功能。
当用户在详细视图中按下编辑时,文本字段应启用,当用户按下完成/保存时,输入 UITextFields 应禁用。
所以我补充说:
-(BOOL) textFieldShouldBeginEditing:(UITextField *)textField
return [(UITableView*)self.view isEditing];
并将控制器设置为每个文本字段的代理,但如果用户在编辑过程中按下完成/保存,则键盘保持打开状态,用户可以编辑字符串。我怎样才能确保不会发生这种情况?
【问题讨论】:
【参考方案1】:通过将文本字段的委托设置为单元格,并实现这些方法来解决。
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
[super setEditing:editing animated:animated];
if (!editing)
[textField resignFirstResponder];
- (BOOL) textFieldShouldBeginEditing:(UITextField *)textField
return [self isEditing];
【讨论】:
【参考方案2】:您只处理了编辑的开始......您应该记录哪个 uitextbox 是第一响应者,然后如果您点击保存按钮,您应该在 texbox 上调用 resignFirstResponder。
希望这会有所帮助, 莫西
【讨论】:
以上是关于在 UITableView 中编辑 UITextField(启用/禁用输入)?的主要内容,如果未能解决你的问题,请参考以下文章
iOS 通过故事板将 UIView 锁定在导航栏下方和 UITableView 上方
iOS - 允许在不编辑模式的情况下在“UITableView”中移动默认行