2012-03-27 3 views
1

Сперва я хотел бы поблагодарить всех за то, что они помогли мне на Dynamically Generate UITableViews. Но мне нужно немного расширить вопрос к новой проблеме, которую я нашел. Пока я могу динамически генерировать таблицу, мне нужно знать, как динамически устанавливать высоту таблиц на основе количества строк. Если вы читаете приведенный выше поток, я в основном должен генерировать таблицы x на основе того, сколько политик имеет пользователь, но в этой таблице может быть х количество строк в нем не всегда или все будут одинаковой суммы. Как я могу сделать это, чтобы следующая таблица начиналась с правильной части представления после таблицы, которая находится над ней? Чтобы они не перекрывались?Динамическая установка высоты и положения динамически создаваемых UITableviews?

Пожалуйста, если я спросил об этом неправильно, и вы не понимаете, пожалуйста, спросите.

ответ

5

Ну, если у вас есть количество строк в каждой таблице, то это не так сложно.

Я предполагаю, что у вас есть все виды таблиц в массиве для удобства управления.

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

CGFloat currentYPosition = 0; 

for (UITableView *tableView in allTableViews) { 
    CGRect frame = tableView.frame; 

    CGFloat height = tableView.rowHeight * numberOfRowsInTableView; 

    frame.origin.y = currentYPosition; 
    frame.size.height = height; 

    tableView.frame = frame; 

    currentYPosition += height; 
} 

Для переменной высоты, вы можете добавлять любые другие дополнительные услуги, которые вы могли бы иметь (таблицу заголовки вида, колонтитул и т.д.)

+2

Я был в середине ввода-то просто, как это. До тех пор, пока он может получить количество политик из своего веб-сервиса и соответствующим образом создать таблицуViews и сохранить их в указанном массиве, это выглядит хорошо – Justin

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