Несколько представлений в контроллере просмотра раскадровки Xcode, один из них не появится в редакторе раскадровки - программирование
Подтвердить что ты не робот

Несколько представлений в контроллере просмотра раскадровки Xcode, один из них не появится в редакторе раскадровки

У меня возникли проблемы с обновлением проекта, созданного кем-то другим в Xcode. Это приложение, построенное в раскадровке, и в одном случае есть сцена с контроллером вида, который имеет несколько представлений под ним в палитре контура документа редактора раскадровки (показано в включенном изображении). Первое представление - это тот, который становится выделенным в редакторе раскадровки при нажатии на него, а также при изменении дизайна или объектов в представлении, которое обновляется. Существует второй вид (тот, который находится ниже выхода и первого ответчика), который каким-то образом привязан к этой сцене, но я не могу понять, как отредактировать дизайн этого представления. Если я нажму на этот вид или любой из его детей, я могу ясно видеть их атрибуты в различных инспекторах с правой стороны (соединения, атрибуты и т.д.).

(править 1 - исходная версия этого вопроса предполагала, что эти дополнительные представления использовались для специальных макетов, необходимых при переключении на ландшафт. Они фактически используются более широко, чем это, например, при отображении всплывающих окон по активному виду.)

В любом случае, мой основной интерес заключается в возможности изменить это второе представление. Кажется, должен быть способ увидеть это в редакторе, и я просто пропустил его. Я искал учебники по реализации портретных и пейзажных представлений в раскадровки (ни один из них не использует этот метод), для таких фраз, как "множественные взгляды в сцене сценария", и просмотрел параметры меню (в том числе многообещающий вариант "unembed", когда выбирается второе представление, но при нажатии происходит удаление представления со сцены, а затем я не могу найти его). Я в недоумении, где искать, чтобы узнать больше. Как изменить это представление? Любая помощь приветствуется.

ViewController scene in document outline

4b9b3361

Ответ 1

Я знаю, что это не имеет смысла, но вы можете перетащить его в первый вид (временно), чтобы отредактировать его через раскадровку. Я думаю, что это абсурд, но он действительно работает.

enter image description here

Ответ 2

У меня была эта проблема несколько раз назад, и единственный метод, который я нашел графически на скрытом виде, заключался в следующем:

  • добавить еще один временный ViewController к раскадровке
  • присвоить ему правильный класс (MainViewController, в вашем случае)
  • удалить его основной вид (left menù, command + backspace)
  • выберите скрытый вид из исходного ViewController и перетащите его в новый, точно под значком "Main View Controller" (всегда используя левые клавиши, тот, который вы прикрепляете на изображении).
  • работайте над представлением, добавьте управление и графику, даже подключив выход/действия.
  • когда закончите работу над представлением, перетащите его назад в исходное положение.
  • удалить контроллер временного представления.

Выход должен оставаться подключенным. Если вы используете команду -x/command-v (вырезать/вставить), вы теряете выходы.

Сообщите мне