Динамически генерировать UITableViews - PullRequest
1 голос
/ 27 марта 2012

Хорошо. Я звоню в веб-службу, чтобы получить политику обратно.У пользователя может быть несколько политик, и эти политики должны иметь собственную таблицу (обратите внимание, что в таблице нет своего собственного раздела).Эти таблицы могут содержать неизвестное количество строк во всех, в зависимости от количества изменений в политике плюс самой политики.Поэтому мне нужно динамически сгенерировать таблицы для этого на UIScrollView.Кто-нибудь знает, как я могу это сделать?Если вы меня не понимаете, спросите.

Ответы [ 3 ]

3 голосов
/ 27 марта 2012

Вы можете создать UITableViews программно с помощью

UITableView *tableView = [[UITableView alloc] init];

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

tableView.delegate = self;
tableView.dataSource = self;

и добавить табличное представление вваш вид прокрутки выглядит так:

tableView.frame = CGRectMake(0, 0, 320, 500); //use whatever frame you want here
[self.scrollView addSubview:tableView];

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

#define kFirstPolicyTableViewTag 1

, а затем при создании табличного представления:

tableView.tag = kFirstPolicyTableViewTag;

затем при работе с любым делегатом или источником данных.методы, проверьте тег, чтобы вы знали, с каким вы имеете дело.Например:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    switch (tableView.tag) {
        case kFirstPolicyTableViewTag: {
            //return the number of rows for that tag
        }
    }
}
2 голосов
/ 27 марта 2012

Учебным подходом для N политик, каждая с M поправками (как N, так и M произвольными и потенциально большими), является UINavigationController с таблицей политик на корневом уровне.При выборе строки (политики) контроллер подробных представлений политики содержит таблицу изменений для этой политики.

2 голосов
/ 27 марта 2012

Рекомендую создать секционное представление таблицы.Таким образом, вы можете загрузить политики в каждом разделе.И вы можете дать некоторые заголовки разделов для каждого раздела, чтобы дать больше информации.

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