如何在 UITableview 中创建具有 n 行数的 UITextField

Posted

技术标签:

【中文标题】如何在 UITableview 中创建具有 n 行数的 UITextField【英文标题】:How to create a UITextField with n number of lines inside a UITableview 【发布时间】:2016-03-29 11:51:25 【问题描述】:

如何在 UITableview 中创建一个包含 n 行的 UITextField。每个单元格可能包含 1 个或多个高度,以便 UITableView 每个单元格具有不同的单元格高度,是否可以做到?

【问题讨论】:

【参考方案1】:

您可以使用此函数来计算动态高度。 它会根据您的宽度返回文本文件动态高度的高度。

-(CGFloat)getDynamicHeightOfLabelWithFont:(UIFont *)font withText:(NSString *)text withFrame:(CGRect)initialFrame

    UITextField *txtDummy = [[UITextField alloc] initWithFrame:initialFrame];
    txtDummy.font = font;
    txtDummy.text = text;
    txtDummy.borderStyle = UITextBorderStyleNone;
    CGRect dummyFrame = initialFrame;

    dummyFrame.size = [txtDummy sizeThatFits:initialFrame.size];
    return dummyFrame.size.height;

你需要在 2 个地方调用它

    开启-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

【讨论】:

以上是关于如何在 UITableview 中创建具有 n 行数的 UITextField的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 uitableviewcell 在每个 uitableview 行中创建不同数量的 uilabel?

如何在 UITableView 中创建 2 列

UITableView 在动态环境中创建静态单元格

在 UITableView 中创建运行总和

如何在 NativeScript 中创建具有动态行数和列数的表?

如何在 IOS 中创建具有不同 UITableViewCell 的 TableView?