2013-11-06 1 views
0

это может быть нуб вопрос, но я новичок в программирование IOS и я не нашел ответ на мой вопрос в другом месте ...Как подключить IPad и iPhone UI XIb элементы в том же UIViewController

Следующий выпуск: Я программирую универсальное приложение для iPad и iPhone с использованием IB и раскадровки. Приложение уже настроено правильно, и у меня есть раскадровка iPhone и iPad в моем проекте, и оба они подключены к правильному (тому же) контроллеру вида, что и владелец.

До сих пор, так хорошо ...

My iPhone приложение близка к завершению, и теперь я хочу, чтобы добавить IPad пользовательский интерфейс, который, кроме компоновки и, возможно, некоторые перестановки кнопок и взглядов на пользование большего размера, будут иметь те же элементы и функциональность.

Теперь вот моя проблема: когда я DragDrop мой IPad UI элемент (например, UILabel) к контроллеру вида подключить его I (очевидно) не может использовать то же имя ... потому что iPhone один уже там. Если элемент называется «myTextField» на iPhone, мне нужно будет его вызвать, например. «myTextFieldiPad» для iPad, что означает, что мне придется разветвляться каждый раз, когда я хочу получить доступ к текстовому полю в зависимости от платформы. Аналогично для IBActions.

В двух словах: тот же контроллер вида, два практически идентичных XIB-файла для iPad и iPhone с идентичными элементами интерфейса, как?

Я что-то пропускаю?

Помогите мне точку в правильном направлении будет высоко оценен ...

Beschi

ответ

1

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

Что я имею в виду, создайте свои свойства, используя перетащить & с iPhone xib, а затем подключите свои элементы управления iPad xib к тем же свойствам, которые вы создали из xib вашего iPhone.

+0

Спасибо! Это именно то, что мне нужно! – user2961860

-1

Попробуйте создать два класса, которые дети вашего BaseViewController. Первый контроллер имеет имя iPhoneViewController: BaseViewController, второй - iPadViewController: BaseViewController. В IB для первого (iPhone) xib вам нужно соединить первый класс. Для второго - второго класса. После этого, когда вы создаете viewcontroller, вам нужно проверить идиом. Для iPhone создайте объект iPhoneViewController и для iPad - второй.

Смежные вопросы