Как получить rowspan в UITableView?

#objective-c #ios #uitableview #html-table

#objective-c #iOS #uitableview #html-таблица

Вопрос:

Как мне построить следующее представление?

Я хочу создать форму, используя стандарт UITableViewController , но мне нужно иметь изображение, которое охватывает первые две строки. В строках есть текст (не изображен).

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

Но я бы действительно хотел что-то сделать с отступом.

                                 UITableView
                           ----- --------------- 
                          |     |               |  <---  Row 0
        UIImageView  ---> |      --------------- 
                          |     |               |  <---  Row 1
                           ----- --------------- 
                          |                     |  <---  Row 2
                           --------------------- 
                          |                     |
                           --------------------- 
                          |                     |
                           --------------------- 
                          |                     |
                           ----------------
                          |
                           -----------
                          |
                           ------
                          |            Etc..
                           --
                          |
  

Как я могу этого добиться, используя наименьшее количество виджетов / наименьшее количество кода (для iOS 4 )?

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

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

2. Нет, я так не думаю. Я думаю, я мог бы попробовать разрезать изображение пополам и выровнять его… но я хочу иметь сгруппированную таблицу, в которой строки 0 и 1 — одна и та же группа, а строки со 2 по n — другая группа, и изображение должно находиться за пределами фона строки (т. Е. Оно должно быть за пределами закругленных углов).

Ответ №1:

Вы, наверное, поняли, что это не стандартно, поэтому я думаю, что ваши три варианта:

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

Я был бы склонен использовать вариант № 1, но если изображения будут меняться или будут динамическими, я мог бы выбрать вариант № 2

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

1. Как насчет добавления представления изображения в качестве подвида UITableView?

2. Rog: Я думаю, что из вопроса он хотел, чтобы изображения прокручивались естественным образом с помощью uitableviewcell

3. Да, он должен прокручиваться со строкой 0 и строкой 1.

Ответ №2:

В итоге я поместил a UIImageView и a, вложенные UITableView в строку 0 UITableViewCell . Вложенный UITableView имеет отключенную прокрутку и предоставляет одной группе две строки. Тогда мне просто пришлось немного подправить фрейм.

Ответ №3:

Я думаю, что лучше всего было бы подклассировать UITableViewCell для ваших первых 2 ячеек. Вы должны иметь возможность расположить его так, чтобы он выглядел как 1 большая ячейка или ваши ячейки с разделением строк, затем просто используйте значение по умолчанию для всех оставшихся ячеек.