我是否可以知道如何在UITableView的单个单元格中插入多行数据, 就像,我希望单个单元格中的输出如下:
KPK
开发
INFOSYSTEMS
INDIA
答案 0 :(得分:1)
UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 80)];
myLabel.text = @"KPK";
myLabel.textAlignment = UITextAlignmentCenter;
myLabel.textColor = [UIColor yellowColor];
[cell addSubview:myLabel];
UILabel *myLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(0, 201, 200, 80)];
myLabel1.text = @"Developer";
myLabel1.textAlignment = UITextAlignmentCenter;
myLabel1.textColor = [UIColor yellowColor];
[cell addSubview:myLabel1];
答案 1 :(得分:1)
在字符串中使用 \ n 。
将 numberOfLines 设置为4以允许任意数量的行。
label.numberOfLines = 4;
使用 sizeWithFont:更新标签框以匹配文字大小。如果不这样做,您的文本将垂直居中或切断。
UILabel *label; // set frame to largest size you want
...
CGSize labelSize = [label.text sizeWithFont:label.font
constrainedToSize:label.frame.size
lineBreakMode:label.lineBreakMode];
label.frame = CGRectMake(
label.origin.x, label.orgin.y,
label.size.width, labelSize.height);
label.text=[NSString stringWithFormat:@"KPK\nDeveloper\nInfosystems\nIndia"];
现在您只需在单元格中添加标签即可。
[cell addSubView:label];
答案 2 :(得分:0)
你可以在文本中放置\ n。不确定是否有效,你可以为多行记录制作自定义单元格。
答案 3 :(得分:0)
在tableview中设置tablerow height和Use label
答案 4 :(得分:0)
创建自定义单元格,在其中添加4个标签,以显示所有必需的信息。查看以下教程,了解如何制作自定义单元格。
答案 5 :(得分:0)
如果您的tableview cell.you可以指定uilabel的行数,请使用uilabel并将其添加为子视图
label.numberOfLines = 4;
答案 6 :(得分:0)
我认为最好的方法是创建自定义UITableViewCell
实现,或以编程方式将UILabel
添加到单元格的contentView。
即:
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 200, 30)];
label.text = @"MyText";
label.textColor = [UIColor blackColor];
[cell.contentView addSubview:label];
[label release]; // Never forget this!
添加其他行时,应更新第一行定义以正确偏移新行。例如。第二个标签应该是这样的:
UILabel *label2 = [[UILabel alloc] initWithFrame:CGRectMake(5, 35, 200, 30)];
完成后,您应该在表的委托中实现tableView:heightForRowAtIndexPath:
方法,因为您必须为新单元格定义正确的高度。在您的示例中,对于4个标签,您应该实现以下内容:
- (CGFloat)tableView:(UITableView*)tableView heightForRowAtIndexPath:(NSIndexPath)indexPath {
if (is_one_of_my_modified_cells) {
return 35*4 + 5;
}
return 44; // default height
}
试试并告诉我。