使用 UITextViewDelegate 更新 UITableViewCell 标签

Posted

技术标签:

【中文标题】使用 UITextViewDelegate 更新 UITableViewCell 标签【英文标题】:Update UITableViewCell label using UITextViewDelegate 【发布时间】:2014-04-10 12:30:42 【问题描述】:

我正在尝试使用 UItextfields 委托从 UITextField 动态更新 UITableViewCell,但它始终是一个字符。

因此,如果我在 UITextView 中键入字母 h ,则 UITableViewCell 中不会发生任何事情,但是如果我在其 hi 中键入另一个字母,那么在 UITableViewCell 中您只会看到 h

这是我的代码

#pragma mark - UITextView delegate
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

    NSUInteger newLength = (textView.text.length - range.length) + text.length;

    if ([text isEqualToString:@"\n"]) 
        return NO;
    

    if(newLength <= MAX_LENGTH)
    
        if (filterTextView.tag == 1) 
            filterButtonsTableViewController.doorFilterString = textView.text;
            [filterButtonsTableViewController.tableView reloadData];
         else if (filterTextView.tag == 2) 
            filterButtonsTableViewController.doorFilterString = textView.text;
            [filterButtonsTableViewController.tableView reloadData];
        
        return YES;
     else 
        return NO;
    

我怎样才能使 UITableViewCell 同时更新为正确的值?

【问题讨论】:

【参考方案1】:

在您实施shouldChangeTextInRange: 时,文本没有 还没有改变。 尝试实现textViewDidChange: 或将replacementText:(NSString *)text 中给出的更改合并到您的实现中。

【讨论】:

textViewDidChange 工作..我正在寻找一个类似的委托方法来捕获文本之后...但找不到它我忘记了这个方法...谢谢

以上是关于使用 UITextViewDelegate 更新 UITableViewCell 标签的主要内容,如果未能解决你的问题,请参考以下文章

如何覆盖 UITextViewDelegate 函数

UITextView 和单元格根据 textview 的内容动态更新高度?

怎么让 uitextview 不换行,左右滑动

UITextView didChangeSelection 没有被调用?

UITextView 双击编辑

UITextView限制输入文字