Пользовательская UITableViewCell, которая выглядит как стандартная ячейка

#ios #uitableview

#iOS #uitableview

Вопрос:

Я пытаюсь создать пользовательскую UITableViewCell с целью, чтобы она выглядела и изменяла размер точно так же, как стандартная ячейка. Единственное отличие заключается в том, что моя пользовательская ячейка использует редактируемое UITextField вместо UILabel.

Она работает нормально, за исключением случая, когда для динамического типа установлено значение меньше, чем по умолчанию.

Вот настройка:

введите описание изображения здесь

Вот как это выглядит в трех разных размерах динамического текста:

введите описание изображения здесь

Проблема в том, что справа. Здесь моя ячейка сверху намного меньше ячейки по умолчанию с надписью «Login» под ней.

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

Комментарии:

1. Почему вы хотите, чтобы он был такого же размера? Пользовательский интерфейс будет прерываться для более крупных шрифтов. Ваш текст выйдет за пределы представления. Это очень плохо.

Ответ №1:

Оберните textField в простое представление, назовем его wrapperView , для которого верхнее, нижнее, начальное и конечное ограничения contentView установлены в 0; затем на вашем wrapperView установите ограничение высоты, которое является greaterThanOrEqualTo минимальным значением, т. Е. 44pt (которое должно быть высотой ячейки по умолчанию)

Комментарии:

1. Он говорит, что хочет, чтобы он имел одинаковый размер для всех размеров текста.

2. Он сказал, что проблема в правом изображении, в котором ячейка меньше размера по умолчанию, который равен 44; например, на центральном изображении ячейка входа больше 44, и все в порядке

3. Прочитайте последнюю строку вопроса.

4. Извините за путаницу, ребята. @RicoCrescenzio вы меня правильно поняли, это именно то, что я хотел. Отличная идея с минимальным размером, я сделал это с меньшим значением непосредственно в UITextField без представления оболочки.