Можете ли вы создать UIBarButtonItem с пользовательским представлением в Интерфейсном Разработчике - PullRequest
9 голосов
/ 25 октября 2010

Я знаю, как использовать initWithCustomView для создания и добавления UIBarButtonItem с пользовательским представлением в коде. Но я предпочитаю делать подобные вещи в Интерфейсном Разработчике, когда могу. Кажется, я не могу найти способ создать пользовательский UIBarButtonItem и установить пользовательское представление.

Ответы [ 2 ]

16 голосов
/ 05 ноября 2010

ОК, в конце концов я понял, как это сделать.

Если вы перетащите представление на NavigationItem, который создаст UIBarButtonItem, который инициализируется с этим настраиваемым представлением, и он связывает его с кнопкой правой панели. В качестве альтернативы вы можете перетащить вид на элемент панели кнопок, который находится внутри элемента навигации. Он не будет работать для элемента панели кнопок, который не находится внутри элемента навигации.

Чтобы создать элемент левой панели с пользовательским представлением, это немного сложнее. Элемент панели кнопок внутри элемента навигации жестко задан как элемент правой стороны. Я временно добавил еще один элемент навигации на верхний уровень файла XIB. Затем перетащите вид на элемент навигации, который создает элемент панели кнопок внутри этого элемента навигации. Переместите элемент панели кнопок из элемента навигации (на верхний уровень XIB). Затем я могу удалить элемент навигации, который я добавил, так что теперь у меня есть автономный элемент панели кнопок, инициализированный с пользовательским представлением. Затем вам нужно добавить ссылку из выхода leftBarButtonItem реального элемента навигации к этому элементу кнопки панели.

11 голосов
/ 12 апреля 2015

Как он сказал в комментариях, решение user486646 больше не работает в Xcode 6. После небольшого возни это то, что я понял.

1) Перетащите панель инструментов в сцену View Controller. Не на вид, а на сцену, например. при выходе.

2) Перетащите свой пользовательский вид на (под) панель инструментов. Это создаст UIBarButtonItem со встроенным настраиваемым представлением на панели инструментов.

3) Теперь перетащите UIBarButtonItem со встроенным настраиваемым представлением туда, куда вам действительно нужно (например, элемент навигации или просто один из элементов панели инструментов View Controller).

4) Удалить панель инструментов, созданную на шаге 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...