我正在使用文本标签显示以前输入的已保存的用户信息。我无法将整个日期和时间放在一行中。任何超出特定长度的信息都不会出现在标签中。我试图做两件事: 1)使标签更大(这对将文本保留在标签内没有任何帮助) 2)将属性检查器下的“换行符”选项更改为“自动换行”。这也没有解决我的问题
如何才能将所有日期/时间信息包含在同一个标签中,仅使用换行文本,以便超出屏幕边缘的文本换行到下一行?
下面的代码显示了 View 的创建,屏幕截图捕获了它在应用程序中的样子(不包括“日期和时间”部分中的一些文本)以及我在 Storyboard 中为标签“日期”设置的设置和时间”
创建 View :
- (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];
}
}
最佳答案
只有当您将行数设置为零并且标签足够高以包含多行时,换行符选项才有效。您可以调用 sizeToThatFits:
来为标签获取合适的尺寸。
您还可以使用自动收缩选项在需要时自动缩小文本。
关于ios - 文本标签自动换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20461480/