Как определить происхождение (x, y) кнопки «Удалить» для UITableViewCell в режиме редактирования? - PullRequest
0 голосов
/ 06 декабря 2011

У меня есть UITableView, который использует стандартный стиль редактирования удаления. Я хочу изменить размер текста в ячейке, когда отображается кнопка «Удалить», чтобы она была видна.

Как определить происхождение стандартной кнопки «Удалить», чтобы я мог рассчитать правильный размер кадра для измененного текста?

EDIT: Это подкласс UITableViewCell, который содержит UILabel. Объем текста в метке варьируется от строки к строке, поэтому высота ячейки рассчитывается для каждой строки, а рамка UILabel корректируется соответствующим образом при создании ячейки.

Я попытался настроить маску autoresizing UILabel в ячейке, как описано в комментариях, и это не влияет на расположение текста в метке, когда активен режим редактирования (Удалить).

РЕДАКТИРОВАТЬ # 2: В соответствии с просьбой здесь приведены некоторые снимки экрана.

a) Вот ячейки таблицы с элементом управления UILabel. Высота каждой ячейки рассчитывается динамически на основе объема текста.

Before edit

b) При запуске режима редактирования отображается элемент управления редактирования (красный круг), который выталкивает текст с правой стороны экрана.

Edit control displayed, text off screen

c) Затем, когда выбран элемент управления для редактирования и отображается кнопка «Удалить», он перекрывает текст.

Delete button overlaying text

Цель состоит в том, чтобы текстовая область (рамка UILabel) уменьшила ее ширину и увеличила высоту, чтобы вместить весь текст, когда редактирование начинается с "b)". Когда кнопка «Удалить» отображается «c)», высота текста остается прежней, а текст, который не помещается, может быть обрезан, а элипсис «...» отображается.

1 Ответ

1 голос
/ 06 декабря 2011

Вам не нужно - если вы добавили свои подпредставления в представление содержимого ячейки и соответствующим образом установили их маску изменения размера, это произойдет автоматически для вас.

Под изменением размера маски я подразумеваю опции, видимые в инспекторе размеров в конструкторе интерфейсов. Например, если вы хотите, чтобы ячейка оставалась на фиксированном расстоянии от левого и правого полей, но увеличивалась или уменьшалась по ширине, то вы изменяете полосы поля и ширины так, чтобы предварительный просмотр показывал, как метка растёт и сжимается, а не остается. того же размера, но движется вокруг. Я не могу вспомнить конкретную внешность, и я не в своем Mac на данный момент, извините, но это должно быть довольно очевидно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...