Iphone 带多标签和自定义高度的UItableviewcell
我在Tableview单元格中添加了多个标签。我正在显示facebook消息、发件人姓名和照片。对于某些帖子,可能是消息不可用或照片不可用。。我检查空条件,若并没有值,我不会为那个特定的单元格创建标签。。。现在有些标签有大字符串,有些可能有小字符串。。我对单元格的高度感到困惑,我可以像示例中这样获得1个标签的动态高度,但如何根据标签文本的数量管理高度。。。我的代码是Iphone 带多标签和自定义高度的UItableviewcell,iphone,uitableview,Iphone,Uitableview,我在Tableview单元格中添加了多个标签。我正在显示facebook消息、发件人姓名和照片。对于某些帖子,可能是消息不可用或照片不可用。。我检查空条件,若并没有值,我不会为那个特定的单元格创建标签。。。现在有些标签有大字符串,有些可能有小字符串。。我对单元格的高度感到困惑,我可以像示例中这样获得1个标签的动态高度,但如何根据标签文本的数量管理高度。。。我的代码是 if ([(Facebook * )[tableArray objectAtIndex:indexPath.row]sen
if ([(Facebook * )[tableArray objectAtIndex:indexPath.row]sender]!= nil) {
labelSender = [[UILabel alloc]initWithFrame:CGRectMake(image_view.frame.size.width+20, 20, 120, 20) ];
labelSender.text = [NSString stringWithFormat:@"%@",[(Facebook * )[tableArray objectAtIndex:indexPath.row]sender]];
[labelSender setLineBreakMode:UILineBreakModeWordWrap];
[labelSender setNumberOfLines:0];
labelSender.textColor = [UIColor colorWithRed:59/255.0 green:89/255.0 blue:153/255.0 alpha:1.0];
labelSender.font = [UIFont fontWithName:@"Arial" size:15.0];
[cell.contentView addSubview:labelSender];
[labelSender release];
}
if ([(Facebook * )[tableArray objectAtIndex:indexPath.row]post]!= nil) {
NSLog(@"post is ==%@",[(Facebook * )[tableArray objectAtIndex:indexPath.row]post]);
labelMessage = [[UILabel alloc]initWithFrame:CGRectMake(image_view.frame.size.width+20, labelSender.frame.size.height + 20, 200, 20)];
labelMessage.text = [NSString stringWithFormat:@"%@",[(Facebook * )[tableArray objectAtIndex:indexPath.row]post]];
[labelMessage setLineBreakMode:UILineBreakModeWordWrap];
[labelMessage setNumberOfLines:0];
labelMessage.backgroundColor = [UIColor yellowColor];
labelMessage.font = [UIFont fontWithName:@"Arial" size:13.0];
[cell.contentView addSubview:labelMessage];
[labelMessage release];
}
请帮助我觉得在处理动态内容时最好使用UITextView。我觉得在处理动态内容时最好使用UITextView。您应该将显示的标签存储在单元格属性的
NSMutableArray
中。这样,您只需使用以下命令即可进行迭代:
for (UILabel *tmpLabel in yourLabelArray){
// do: add height to sum
}
这将为每个标签节省一个if(labelExists)
祝你好运 应将显示的标签存储在单元格属性的
NSMutableArray
中。这样,您只需使用以下命令即可进行迭代:
for (UILabel *tmpLabel in yourLabelArray){
// do: add height to sum
}
这将为每个标签节省一个if(labelExists)
祝你好运 我无法回答你的问题…:PI想要计算所有标签的高度,并且它们的高度总和将是Table ma的预期高度。Table ma是动态高度?那么,为什么不将文本添加到不同的单元格中,让
UITableView
为您完成其他操作呢?您已经看到了facebook帖子。想象一下,所有帖子都在tableview的单元格中。我必须管理发件人姓名、邮件、链接、描述、图像的标签。现在清楚了吗?我无法回答您的问题…:PI想要计算所有标签的高度,并且它们的高度总和将是Table ma的预期高度。Table ma是动态高度?那么,为什么不将文本添加到不同的单元格中,让UITableView
为您完成其他操作呢?您已经看到了facebook帖子。想象一下,所有帖子都在tableview的单元格中。我必须管理发送者姓名、消息、链接、描述、图像的标签。现在清楚了吗?我只想显示发送者姓名、消息、链接。。。这些都是单独的,仅适用于message keep UITextField。剩下的时间,UILabel将完成这项工作。对于名称标签一行,对于链接标签2行,对于消息保留uitextview。添加所有这些默认值并将其返回给委托。但标签的宽度可能不同。。在这种情况下,我的一些文本将丢失..我只使用了一个标签,但对2个或更多标签感到困惑设置一些宽度,这在您的情况下是可能的。和设置UILabels adjustsFontSizeToFitWidth属性。我只想显示发件人名称、邮件、链接。。。这些都是单独的,仅适用于message keep UITextField。剩下的时间,UILabel将完成这项工作。对于名称标签一行,对于链接标签2行,对于消息保留uitextview。添加所有这些默认值并将其返回给委托。但标签的宽度可能不同。。在这种情况下,我的一些文本将丢失..我只使用了一个标签,但对2个或更多标签感到困惑设置一些宽度,这在您的情况下是可能的。并设置UILabels adjustsFontSizeToFitWidth属性。