多行UILabel有时省略iOS的最后一行

ker*_*rry 6 multiline uitableview uilabel tableviewcell ios

我在具有动态高度的tableview单元格中使用多行UILabel.问题有时候,UILabel省略了最后一行,而标签高度是完美的,有时它完美地显示每条线.这与此问题类似,但我已经检查过,在我的情况下,行数没有变化.

UILabel没有显示我的所有文字,也没有显示有更多(...)

我正在实施UILabel

  1. 将行设置为0
  2. 设置自动换行

然后我在Label中设置文本.

这是截图.第一个单元格第二个标签显示完整文本,而第三个单元格第二个标签不显示,而标签高度是完美的.

在此输入图像描述

无论是13-14行的长文本还是仅仅2行,都是这种情况.只省略了最后一行,有时也省略了.

我还在表格视图单元格的nib文件中将每个标签的首选宽度设置为220.

我的代码:

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




Message *message = [self.messages objectAtIndex:indexPath.row];

if(indexPath.row % 2 != 0 || indexPath.row == 10)
{
    chatCell = (ChatTableViewCell *)[tableView dequeueReusableCellWithIdentifier:@"chatSend"];

    [chatCell.chatMessageLabel setNumberOfLines:0];
    [chatCell.chatNameLabel setNumberOfLines:0];
    [chatCell.chatTimeLabel setNumberOfLines:0];


    chatCell.chatMessageLabel.lineBreakMode = NSLineBreakByWordWrapping;
    chatCell.chatNameLabel.lineBreakMode = NSLineBreakByWordWrapping;
    chatCell.chatTimeLabel.lineBreakMode = NSLineBreakByWordWrapping;

    chatCell.chatMessageLabel.text=message.message;
    chatCell.chatNameLabel.text = message.name;
    chatCell.chatTimeLabel.text = message.time;
    chatCell.chatUserImage.image = message.avatar;



}
else
{
    chatCell = (ChatTableViewCell *)[tableView dequeueReusableCellWithIdentifier:@"chatReceive"];



    [chatCell.chatMessageLabel setNumberOfLines:0];
    [chatCell.chatNameLabel setNumberOfLines:0];
    [chatCell.chatTimeLabel setNumberOfLines:0];

    chatCell.chatMessageLabel.lineBreakMode = NSLineBreakByWordWrapping;
    chatCell.chatNameLabel.lineBreakMode = NSLineBreakByWordWrapping;
    chatCell.chatTimeLabel.lineBreakMode = NSLineBreakByWordWrapping;

    chatCell.chatMessageLabel.text=message.message;
    chatCell.chatNameLabel.text = message.name;
    chatCell.chatTimeLabel.text = message.time;
    chatCell.chatUserImage.image = message.avatar;



    chatCell.authorType = STBubbleTableViewCellAuthorTypeOther;

}


    return chatCell;
}
Run Code Online (Sandbox Code Playgroud)

请帮助!!