Хотите создать классный статический интерфейс, но: "Статические представления таблиц действительны только..."
Итак, я создаю View как:
![введите описание изображения здесь]()
Для этого я пытаюсь использовать Storyboard, в который я добавляю 2 TableViews (как "Static Cells" ), а затем вручную добавляю содержимое Cell непосредственно из раскадровки...
В моей раскадровке он выглядит великолепно, но когда я создаю, я получаю:
ru.lproj/MainStoryboard.storyboard: ошибка: нелегальная конфигурация: Представления в статической таблице действительны только при Экземпляры UITableViewController
Если у вас есть идеи по этой проблеме.
Спасибо!
Ответы
Ответ 1
Добавьте UITableViewController к вашему представлению. Он должен содержать UITableView. Определите это как статическое представление таблицы и сделайте его сгруппированным. Добавьте два раздела. Один с одним рядом, а второй с двумя рядами. Добавьте свои метки и слайдеры в строки снова.
Я не знаю, почему вы хотели бы иметь два UITableViews здесь?
Ответ 2
Я также столкнулся с проблемой при изменении существующего настраиваемого контроллера представлений, в результате чего он расширяет UITableViewController. XCode недостаточно умен и не поймет, что он уже соответствует его требованиям.
Вы можете решить эту проблему, отредактировав исходный код раскадровки и изменив <viewController ...
на <tableViewController...
.
Исходный источник: https://plus.google.com/108665969482300807329/posts/J4mCASMA3pZ
Ответ 3
Единственный способ сделать эту работу в Xcode 6 и тем, как Apple намеревается это работать, - это встроить TableViewController в представление контейнера, если нужно. Кажется, что вы не можете взломать свой путь, как описано juanignaciosl, в Xcode 6.
Итак, шаги будут следующими:
- Создать контроллер табличного представления
- заменить табличный вид в этом контроллере таблицей из вашего "проблемного" контроллера вида со всеми его статическими ячейками и т.д.
Если ваш вид таблицы является частью более сложного ui, и он не является основным видом вашего контроллера представлений, а затем продолжайте, как показано ниже
- создайте контейнерView в вашем "проблемном" контроллере представлений, в том же положении, что и ваш неподвижный статический табличный вид. Это также автоматически создаст другой viewcontroller и seque - удалите их.
- перетащить левый клик или перетащить ctrl из представления контейнера в tableviewcontroller, который содержит вашу статическую таблицу и выбрать вставить
Это не так хорошо, как раньше, потому что ваше табличное представление удаляется в отдельном контроллере представления в построителе интерфейса, и это может повлиять на ваш существующий код и выходы. Но для больших статических таблиц это лучшая альтернатива для генерации всего содержимого динамически.
Ответ 4
Вы можете сделать его динамическим, а затем переключить прокрутку:
[yourTableName setScrollEnabled:NO];