【问题标题】:How to use UITextView in UITableViewCell with variable height?如何在具有可变高度的 UITableViewCell 中使用 UITextView?
【发布时间】:2011-04-24 12:30:12
【问题描述】:

我有兴趣创建一个内部带有 UITextView 的 UITableViewCell,当用户在 UITextView 中键入或多或少的文本时,它会调整其高度(到某个最大值)。我知道如何将 UITextView 添加到自定义 UITableViewCell 中——但是当用户正在输入时,我该如何更改 UITableViewCell 的高度?这可以吗?

【问题讨论】:

    标签: iphone uitableview ios4 uitextfield


    【解决方案1】:

    据我所知,设置表格单元格高度的唯一方法是通过委托 heightForRowAtIndexPath: 方法。要调用此方法,您可以在表上调用 reloadData,但我不确定这会对您正在编辑的 UITextView 产生什么影响。不过值得一试。

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    return 100;
    }
    

    要计算返回值,您需要根据当前输入计算高度并同时展开文本视图。 NSString 有一些有用的方法,例如 sizeWithFont:constrainedToSize:lineBreakMode:。它会计算出一个 CGSize,您可以使用它来制作 CGRect 等。

    【讨论】:

    • reloadData 将导致单元格重新加载并且键盘将被移除。
    猜你喜欢
    • 2013-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多