在故事板中链接时,UILabel的lineBreakMode不起作用

时间:2014-12-24 09:43:52

标签: ios uilabel autolayout line-breaks ibaction

我尝试用Xcode做我的第一个ipad / iphone应用程序。我在ViewController.h中创建了一个UILabel和一个IBAction:

@interface ViewController : UIViewController{
    IBOutlet UILabel *display;
}

- (IBAction)ChangeText;

我将变量“display”与我在Main.storyboard中创建的标签和方法“ChangeText”链接到一个按钮。

使用自动布局放置标签和按钮。

标签最初包含文本“ - ”,当我点击按钮时,方法“ChangeText”会将标签文本更改为更长的标签:

- (IBAction)ChangeText{

    [display setText:@"A long text which exceeds the size of the screen I am using. A long text which exceeds the size of the screen I am using.A long text which exceeds the size of the screen I am using."];
}

由于文本对于屏幕很长,我想在几行上显示它。所以我改变了lineBreakMode和“display”的numberOfLines:

- (IBAction)ChangeText{

    display.lineBreakMode = NSLineBreakByWordWrapping;
    display.numberOfLines = 0;

    [display setText:@"A long text which exceeds the size of the screen I am using. A long text which exceeds the size of the screen I am using.A long text which exceeds the size of the screen I am using."];
}

不幸的是,结果是一样的,文本只显示在一行上。

你知道为什么以及如何克服这个问题?

提前致谢。

1 个答案:

答案 0 :(得分:0)

dehlen是对的,标签没有足够的空间。

我现在不知道我应该/可以在故事板中手动扩展标签的大小。我还必须添加一个"垂直间距"约束,以便自动布局很快乐。