0

有什么方法可以在 UILabel 中有多行文本?

我不希望视图中的标签超过 1 个。

如何在单个 UILabel 中添加多行?

4

3 回答 3

1

是的,有办法。只需要添加UILabelie 的两个属性

  1. NumberOfLines=0它允许您在一个UILabel

  2. LineBreakMode = NSLineBreakByWordWrapping它可以让你一个字一个字地打断你的句子。您也可以根据您的要求进行更改。

    [YourLabel setNumberOfLines:0];
    [YourLabel setLineBreakMode:NSLineBreakByWordWrapping];
    

您还可以从界面构建器中设置这两个属性

在此处输入图像描述

在此处输入图像描述

于 2013-10-19T04:24:10.177 回答
0

这是示例代码:

    UILabel *lblUsername=[[UILabel alloc] init];
    StoryTextSize = [storytext sizeWithFont:[UIFont fontWithName:@"Georgia" size:13.0f] constrainedToSize:CGSizeMake(300, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];
    lblUsername.frame=CGRectMake(20, 5, [[UIScreen mainScreen] bounds].size.width-40, StoryTextSize.height);
    lblUsername.textColor=[UIColor blackColor];
    lblUsername.text=[NSString stringWithFormat:@"%@",[[tblRecords objectAtIndex:indexPath.row] valueForKey:@"username"]];
    lblStoryText.numberOfLines=nooflines;
    lblStoryText.backgroundColor=[UIColor clearColor];
    [self.view addSubview:lblStoryText];

确保您的标签高度应该更高,以便总没有线条可见。

于 2013-10-19T04:25:25.200 回答
0

这是一个示例代码

    UILabel  *pHolder1 = [[UILabel alloc]initWithFrame:CGRectMake(5, 0, 245, 45)];
    pHolder1.backgroundColor = [UIColor clearColor];
    pHolder1.font = [UIFont systemFontOfSize:14.0f];
    pHolder1.numberOfLines =0;
    pHolder1.lineBreakMode = NSLineBreakByWordWrapping;
    pHolder1.textAlignment = NSTextAlignmentCenter;

动态计算UILabel的高度请参考下面的帖子 根据文字调整UILabel高度

于 2013-10-19T04:03:18.303 回答