Текстовая метка Word Wrapping
Я использую текстовую метку для отображения ранее введенной пользовательской информации, которая была сохранена. У меня проблемы с размещением всей даты и времени в одной строке. Любая информация, выходящая за пределы определенной длины, не отображается в ярлыке. Я попытался сделать две вещи: 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];
}
}
1 ответ
Параметр разрыва строки работает только в том случае, если количество строк установлено на ноль, а метка достаточно высокая, чтобы содержать более одной строки. Ты можешь позвонить sizeToThatFits:
чтобы получить соответствующий размер для этикетки.
Вы также можете использовать параметр автоусадки, чтобы автоматически уменьшать размер текста, когда это необходимо.