Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 带多标签和自定义高度的UItableviewcell_Iphone_Uitableview - Fatal编程技术网

Iphone 带多标签和自定义高度的UItableviewcell

Iphone 带多标签和自定义高度的UItableviewcell,iphone,uitableview,Iphone,Uitableview,我在Tableview单元格中添加了多个标签。我正在显示facebook消息、发件人姓名和照片。对于某些帖子,可能是消息不可用或照片不可用。。我检查空条件,若并没有值,我不会为那个特定的单元格创建标签。。。现在有些标签有大字符串,有些可能有小字符串。。我对单元格的高度感到困惑,我可以像示例中这样获得1个标签的动态高度,但如何根据标签文本的数量管理高度。。。我的代码是 if ([(Facebook * )[tableArray objectAtIndex:indexPath.row]sen

我在Tableview单元格中添加了多个标签。我正在显示facebook消息、发件人姓名和照片。对于某些帖子,可能是消息不可用或照片不可用。。我检查空条件,若并没有值,我不会为那个特定的单元格创建标签。。。现在有些标签有大字符串,有些可能有小字符串。。我对单元格的高度感到困惑,我可以像示例中这样获得1个标签的动态高度,但如何根据标签文本的数量管理高度。。。我的代码是

    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属性。