我正在使用文本标签显示以前输入的已保存的用户信息。我无法在一行中拟合整个日期和时间。任何超出特定长度的信息都不会出现在标签中。我试图做两件事: 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];
}
}
答案 0 :(得分:5)
换行符选项仅在将行数设置为零且标签高度足以包含多行时才有效。您可以致电sizeToThatFits:
以获得适当的标签尺寸。
您还可以使用自动收缩选项在需要时自动缩小文本。