如何在 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?