2015-09-17 3 views
0

у меня есть текущая структура:UIBarButtonIteem общего для всех контроллеров

  • Nagivation Контроллер:
    • Панель вкладок Контроллер:
      • Пользовательского вид контроллера/Таблица
      • Пользовательского вид контроллер/таблица
      • Пользовательский контроллер/коллекция

контроллер навигации, который содержит контроллер панели вкладок и который содержит несколько контроллеров пользовательских представлений.

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

+1

Создайте подкласс класса UINavigation Controller и сделайте все ваши контроллеры навигации подклассом. Затем просто добавьте свою кнопку на панели. – Devster101

+0

Как мой вопрос говорит, у меня только один контроллер nav, остальные - пользовательские контроллеры представлений, они уже подклассифицируют некоторые другие классы. –

+0

У вас может быть HelperClass с методом, который возвращает пользовательский uibarbuttonitem нечто вроде '[HelperClass barButtonItem];' – Lucho

ответ

0

Вы можете написать класс утилиты и написать код для реализации кнопки в методе. Затем импортируйте этот класс во все контроллеры представлений и просто вызовите метод. Это должно решить проблему копирования избыточного кода во всех контроллерах представления.

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