2016-10-26 6 views
0

Я использую Xcode 8 и работаю с устаревшим файлом .xib и должен выяснить, как программно перемещать все объекты. Вопросы:iOS - ссылка и программное перемещение представления из файла XIB

  1. Как я могу программно ссылаться на представление (на которое указывает красная стрелка)?
  2. Предполагая, что я могу ссылаться на представление, будет ли программно перемещать его и относительно перемещать четыре кнопки и ярлык, содержащиеся в нем?

Вот снимок экрана Вид иерархии файла .xib:

enter image description here

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

ответ

1

Предполагая, что у вас есть контроллер вида для этой доски объявлений, выберите вариант + щелкните по исходному файлу, чтобы открыть его в помощнике редактора. Вы CTRL + Перетащите из контура документа (где стрелка указывает) на место в исходном файле, где вы хотите, чтобы выход отображался, и Xcode создаст IBOutlet для представления.

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

Обратите внимание, что при перемещении вида да, он будет перемещать все его подпункты. Если это временная анимация, рассмотрите возможность использования свойства .transform вместе с одним из методов анимации UIView. Вы также можете CTRL + перетащить ограничения из конструктора интерфейса и манипулировать ограничениями в коде. Вы должны избегать установки рамки/центра вручную, если вы используете ограничения, иначе автозапуск будет сражаться с вами.

+0

Duh! Спасибо, Джош! Полностью забыл, что я мог бы ctrl-drag просмотров. – Vee