在 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”中移动默认行

如何在编辑模式下在 UITableView 中添加额外的单元格?

UITableview 部分可编辑

在 UITableView 编辑模式中更改复选标记颜色?

在 UITableView 中编辑 UITextField(启用/禁用输入)?