文字标签词包装

时间:2013-12-09 01:15:09

标签: ios iphone uilabel

我正在使用文本标签显示以前输入的已保存的用户信息。我无法在一行中拟合整个日期和时间。任何超出特定长度的信息都不会出现在标签中。我试图做两件事: 1)使标签更大(这没有做任何事情来帮助保持标签内的文字) 2)将属性检查器下的“换行符”选项更改为“自动换行”。这也没有解决我的问题

如何制作它以便我可以将所有日期/时间信息包含在同一标签中,只是包装文本,以便超出屏幕边缘的文本换行到下一行?

下面的代码显示了视图的创建,截图捕获了它在应用程序中的样子(“日期和时间”部分中的某些文字未包括在内)以及我在故事板中为标签“日期”设置的设置和时间“

创建视图:

- (void)configureView
{
    Event *theEvent = self.event;

    static NSDateFormatter *formatter = nil;
    if (formatter == nil) {
        formatter = [[NSDateFormatter alloc] init];
        [formatter setDateFormat:@"cccc, MMMM dd, yyyy hh:mm a"];
    }
    if (theEvent) {
        self.detailLabel.text = theEvent.detail;
        self.locationLabel.text = theEvent.location;
        self.dateTimeLabel.text = [formatter stringFromDate:(NSDate *)theEvent.date];
    }
}

enter image description here enter image description here

1 个答案:

答案 0 :(得分:5)

换行符选项仅在将行数设置为零且标签高度足以包含多行时才有效。您可以致电sizeToThatFits:以获得适当的标签尺寸。

您还可以使用自动收缩选项在需要时自动缩小文本。