This blog post задает сам вопрос: как можно визуально управлять элементами панели инструментов в Interface Builder? Конечно, можно использовать this technique для просмотра верхнего уровня, но как насчет других представлений? Не могу ли я дать моему партнеру по дизайну возможность редактировать элементы панели инструментов непосредственно в таком виде без взлома создания локатора UIToolbar, который никогда не использовался?Как создать элементы поднабора панели инструментов UINAVigation Interface Builder?
ответ
Вот как я это сделал. Я добавил это свойство моего контроллера @interface
:
@property (nonatomic, strong) IBOutletCollection(UIBarButtonItem) NSArray *toolbarItems;
В @implementation
, я добавил:
@synthesize toolbarItems;
Затем, в бобах, у меня было все UIBarButtonItem
с в UIToolbar
. В навигаторе «Объекты» я выбрал их все, а затем переместил их из UIToolbar, так что у них нет представления, что они являются частью. Затем для каждого из них я щелкнул правой кнопкой мыши и перетащил круг рядом с «Новая сборка реферирования» на «Владелец файла» и выбрал toolbarItems
в появившемся всплывающем окне. И теперь все UIBarButtonItems просто волшебным образом появляются в UIToolbar, больше не нужно работать.
Увы, это не идеально. Теперь, когда UIBarButtonItems
не находятся в UIToolbar
в наконечнике, они являются полностью невидимыми конструкторами интерфейса. Они все еще находятся в навигаторе «Объекты», но на самом деле не видно, как они выглядят. Это кажется неудачной ошибкой (поданной как rdar://11234043).
Другая проблема заключается в том, что нет способа увидеть порядок элементов в IBOutletCollection
, насколько я могу судить. Я добавил их в том порядке, в котором я хочу, чтобы они отображались справа налево, но это будет PITA, если мне когда-либо понадобится изменить порядок или добавить новые где-то посередине.
Здесь надеется, что Apple добавит более приятную поддержку конструктора интерфейса с видимыми контейнерами.
- 1. Размещение панели инструментов с помощью Interface Builder
- 2. Изменить положение панели инструментов UINavigation в iOS7?
- 3. Настройка панели инструментов Элементы UINavigationController
- 4. Interface Builder: Как выбрать вложенные элементы?
- 5. Элементы панели инструментов динамически
- 6. XCode/Interface Builder: как переименовать элементы NSToolbar по умолчанию?
- 7. Как отредактировать панель инструментов в Interface Builder (Xcode 5)?
- 8. Элементы панели инструментов
- 9. IvoryCKEditorBundle: как настроить элементы панели инструментов?
- 10. Инициализация объекта Builder Interface Builder
- 11. Как создать пользовательские элементы управления для панели инструментов VS2005?
- 12. xcode interface builder objects
- 13. Как добавить кнопки панели в панель UINavigation
- 14. Android панели инструментов скрытые элементы
- 15. Очень основная проблема с панели вкладок приложений и Interface Builder
- 16. Как увидеть контроллер панели вкладок в Interface Builder
- 17. Интерфейс Builder не распознает кнопки панели инструментов
- 18. iPhone NavigationControl панели инструментов элементы
- 19. центр выравнивает элементы панели инструментов при изменении высоты панели инструментов
- 20. Interface Builder точки управления
- 21. прозрачность PNG в Interface Builder
- 22. ios interface builder layout oddity
- 23. контроллеры панели вкладок не откроются в Interface Builder
- 24. Как скрыть элементы действия на панели инструментов
- 25. как добавить удаленные элементы из панели инструментов
- 26. Как включить/отключить элементы панели инструментов?
- 27. Android-конструктор, как «Interface Builder»?
- 28. Как добавить дополнительные элементы в NSMenu в Interface Builder?
- 29. bindings в Interface Builder
- 30. UITabBarController в Interface Builder
В XCode 4.6.3 это дает ошибку: свойство 'toolbarItems' пытается использовать переменную экземпляра '_toolbarItems', объявленную в суперклассе 'UIViewController' – malhal