尽管我设置了 label.numberOfLines = 0,UILabel 仅显示文本的第一行

Vol*_*da2 3 uitableview uilabel ios

我创建了自定义 UITableViewCell。

@interface AnswerCell : UITableViewCell
@property (nonatomic, retain) IBOutlet UILabel *textLabel;
@property (nonatomic, retain) IBOutlet UILabel *detailTextLabel;
@end
Run Code Online (Sandbox Code Playgroud)

并设置detailTextLabel.numberOfLines = 0;

        cell = [tableView dequeueReusableCellWithIdentifier:kAnswerIdentifier];
        if (cell == nil)
        {
            [[NSBundle mainBundle] loadNibNamed:@"AnswerCell" owner:self options:nil];
            cell=answerCell;
        }            

        cell.detailTextLabel.text = [self extractText:indexPath forLabelAttribute:kDetailTextLabel];
        cell.detailTextLabel.font = [self extractFont:indexPath forLabelAttribute:kDetailTextLabel];
        cell.detailTextLabel.lineBreakMode = UILineBreakModeWordWrap;
        cell.detailTextLabel.numberOfLines = 0;
Run Code Online (Sandbox Code Playgroud)

UILabel 仅显示文本的第一行。但为什么?

更新:我的detailTextLabel 的高度= 21。我需要做什么?我需要改变高度=1000吗?

ber*_*ium 6

我猜你无法显示所有文本,因为标签高度太小。您需要根据文本长度设置所需的高度。

请参阅根据文本调整 UILabel 高度的答案