Добавить левое и правое поле в табличное представление UITableViewController

У меня есть таблица UITableViewController со статическими ячейками.

Теперь я хочу добавить ограничение левого и правого полей во время выполнения, потому что я не могу добавить ограничение с помощью Interface Builder.

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

Спасибо


person Kirit Vaghela    schedule 02.02.2015    source источник


Ответы (2)


Вы можете встроить UITableView внутрь UIView вместо UIViewController. Если бы вы сделали это, вы могли бы изменить размер таблицы и установить поля в построителе интерфейса. Создайте новый UIViewController (тот, в который не включен UITableView), затем перетащите на него новый UITableView. Не забудьте установить источник данных и делегировать его новому UIViewController. Это должно сработать.

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

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {


        if(indexPath.row==0){
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
        cell.textLabel.text = @"your text";
        return cell;
}



if(indexPath.row==1){
            UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
            cell.textLabel.text = @"your text2";
            return cell;
    }

так далее...

person Kex    schedule 02.02.2015
comment
Согласен, я почти никогда не использую UITableViewController из-за отсутствия контроля над пользовательским интерфейсом. - person Jason Renaldo; 02.02.2015
comment
Да. Но Interface Builder дает мне ошибку, когда я использую статическую ячейку в табличном представлении внутри ViewController - person Kirit Vaghela; 02.02.2015
comment
возможно, вы могли бы просто изменить свою реализацию и использовать динамическую. если вы уже используете статические данные, то данные в ваших ячейках, скорее всего, будут просто текстовыми, и их легко изменить на динамические. - person Kex; 02.02.2015
comment
Представления статических таблиц действительны только при внедрении в экземпляры UITableViewController. - person Kirit Vaghela; 02.02.2015
comment
да, если вы действительно хотите сделать это в конструкторе интерфейсов, вы можете достаточно легко изменить его на динамический. - person Kex; 02.02.2015
comment
Я думаю, что это дает вам больше гибкости в целом. - person Kex; 02.02.2015
comment
Затем мне нужно создать ячейку прототипирования для всех статических ячеек. - person Kirit Vaghela; 02.02.2015
comment
это всего лишь одна клетка, которую вы копируете для всех - person Kex; 02.02.2015
comment
Все клетки разные - person Kirit Vaghela; 02.02.2015
comment
вы имеете в виду, что текст в ячейках отличается или стиль отличается? Если это статично, вы должны иметь в виду текст. Вы просто используете оператор if. - person Kex; 02.02.2015
comment
Нет. Все ячейки содержат разные представления - person Kirit Vaghela; 02.02.2015
comment
добавлен пример с использованием операторов if выше - person Kex; 02.02.2015

Не уверен, но может быть - вставки прокрутки tableView могут помочь вам - введите описание изображения здесь

person Vijay Sharma    schedule 02.02.2015