1

Я пытаюсь отобразить 3 изображения вместе с дополнительной информацией в UILabel в UITableView. Прикрепленное изображение моего сотового Prototype:Динамически установить высоту UITableViewCell для обертывания содержимого

enter image description here

В настоящее время, моя проблема в том, что содержание изображения подбежав к следующей ячейке. Когда я тестирую, я в настоящее время загружаю только самое большое изображение из 3 (я вытаскиваю их с сервера, предварительно настроенного от самого большого до самого маленького). Я также отмечу, что изображения будут подвержены различным ограничениям размеров).

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

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

Для начала, я попытаюсь объяснить, что я ищу, чтобы выполнить:

  1. Описание Этикетка должна охватывать по всей ячейке таблицы.

    • Чтобы сделать это, я возлагал водительству, верхний & завершающие пробелы в надтаблицы
  2. Я хотел бы верхний правый и левый верхний изображение на оба быть расположены непосредственно под описанием этикетки , Чтобы сделать это, у меня есть:

    • Закреплен ведущее место в верхнем правом изображениях на надтаблицы
    • возлагали замыкающее пространство верхнего левого изображения в надтаблицы
    • возлагали верхнее пространство и изображения на этикетке Описание
    • Закрепленные расстояние по горизонтали между этими двумя изображениями
  3. Я хотел бы, в правом нижнем углу, непосредственно под верхней правой, чтобы сделать это, у меня есть:

    • Закреплено ведущее место правого нижнего изображения на надтаблицы
    • возлагали верхнее пространство правого нижнего изображения в верхнем правом изображении
  4. Я хотел бы ярлык метрики для появляются ниже верхнего левого изображения, чтобы сделать это, у меня есть:

    • Закрепленные верхнее пространство этой метки в верхнем левом изображении
    • возлагали бо ttom и и задние кромки метрик к супер-представлению
    • Прикреплено ведущее пространство метрик к нижнему правому изображению.

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

Кроме того, извинения за мое изложение этой проблемы. Ниже приведен образ предупреждений, которые я получаю (для вашей справки, изображение 1 находится сверху справа, изображение 2 слева вверху, а изображение 3 внизу справа). Когда я просматриваю ограничения каждого из изображений, каждая сторона IS приходилось.

Любая помощь будет оценена! Благодарю.

enter image description here

+0

вам нужно ** опубликовать пример ** - я имею в виду изображение - проблемы вы испытываете. это: «В настоящее время моя проблема заключается в том, что содержимое изображения переходит в следующую ячейку». совершенно неясный чувак. не стесняйтесь публиковать один или несколько полных примеров, показывающих вашу проблему. – Fattie

+0

Хорошо, теперь я отредактирую свой вопрос и добавлю несколько снимков экрана. Я был таким расплывчатым изначально! – shaunvxc

+0

Просто один общий момент, Шон. Обратите внимание, что поистине полностью динамические ячейки и таблицы (или эти дни, коллекции - никто больше не использует таблицы) в больших прокручиваемых представлениях, это, самое просто, самое сложное в iOS и Android-программировании! Например, у Facebook есть проблемы с этим. для многих тонких вопросов ответов нет. (как и мой вызов в другом комментарии, что вы делаете с очень интересным изображением? кто знает.) – Fattie

ответ

0

попробуйте добавить этот код в ваш viewDidLoad:

override func viewDidLoad() { 
    super.viewDidLoad() 
    tableView.estimatedRowHeight = tableView.rowHeight 
    tableView.rowHeight = UITableViewAutomaticDimension 
} 
+0

Да - как указано в моем вопросе выше, я сделал обе эти вещи. Кажется, я не работаю для меня. Единственное различие заключается в том, что я установил tableView.estimatedRowHeight = , а не tableView.rowHieght-- это устранит проблему? – shaunvxc

+0

tableView.estimatedRowHeight = tableView.rowHeight wil автоматически получает значение из раскадровки. Убедитесь, что ваши ограничения настроены правильно (сверху и снизу вашей ячейки прототипа) – Leszek

+0

подтвердит это, когда я вернусь домой, но я не думаю, что есть какие-либо предупреждения автомакета, а в раскадровке линии ограничений все синие (я в этом уверен, но перепроверяю это) – shaunvxc

Смежные вопросы