#iphone #objective-c #tableview
#iPhone #objective-c #просмотр таблицы
Вопрос:
когда вы вводите слишком длинное предложение для iphone, оно автоматически добавляет «…» в конце, чтобы показать вам, что есть другие вещи, которые вы не видите правильно. Я хочу удалить эти «…».
изображение : текст alt http://img691.imageshack.us/img691/2159/screenshot20100602at095.png
Ответ №1:
Ну, я предполагаю, что вы используете метку. Посмотрите на свойство «lineBreakMode». Ваше решение, вероятно, будет включать некоторую комбинацию этого свойства в сочетании со свойством «numberOfLines». Например, установка свойству «numberOfLines» значения 0 автоматически увеличит высоту метки, чтобы она соответствовала всему тексту. Таким образом, использование этого с UILineBreakModeWordWrap, вероятно, помогло бы.
UILabel *label = [[UILabel alloc] init];
label.numberOfLines = 0;
label.lineBreakMode = UILineBreakModeWordWrap;
label.text = @"Light beer 5% 10oz Glass served cold";
[label release];
Комментарии:
1. хорошо, спасибо, я не совсем понял, что вы сказали, но мне нужно уменьшить размер текста, чтобы он соответствовал ячейке tableview. как присвоить свойству numberoflines значение 0?
2. хорошо, я почти понял, моя ячейка tableview заполнена строкой, как я могу это сделать, чтобы заполнить меткой?
3. хорошо, это работает, ребята, спасибо, но это выдает мне предупреждение… «устарело»
4. Скорее всего, вы задаете текст ячейки как cell.text = @»blabla» — это устаревший метод, и теперь вам следует использовать cell.textLabel.text = @»blabla». (или установите строковое значение для меток любой другой ячейки)
Ответ №2:
Для этого у вас есть несколько вариантов:
- Установите для свойства lineBreakMode label значение UILineBreakModeClip — таким образом, ваше предложение будет просто обрезано без «…» в конце
- Установите для свойства label adjustsFontSizeToFitWidth значение YES — label автоматически уменьшит размер шрифта, чтобы уместить строку в доступное пространство
- Сделайте так, чтобы ваша UILabel состояла из нескольких строк — установите ее
numberOfLines
свойство равным 0, а lineBreakMode — UILineBreakModeWordWrap. Хотя при таком подходе высота вашей метки должна быть достаточно большой, чтобы содержать несколько строк…