У меня есть класс с именем BaseViewController
, который наследует от UIViewController
и класс BaseTableViewController
, который наследует от UITableViewController
. Оба эти класса имеют идентичную общую логику (т. Е. Обработку вращения, вспомогательные методы и т. Д.). Сейчас код просто дублируется в обоих. Я считал, что просто создаю класс ViewControllerHelper и выставил его как публичную собственность, но мне было интересно, есть ли более элегантные решения.UIViewController и UITableViewController общая логика
1
A
ответ
0
, если вам не нужны какие-либо общие Иварс/свойства, можно написать расширение для UIViewController
0
Я бы создать общий класс, как BaseViewController
с двумя инициализаторами:
initWithList:
(для просмотра таблицы) и initWithSomething:
для простого UIViewController материала. Каждый из этих инициализаторов загружал отдельные xibs (один с UITableView
в качестве основного вида, другой - как простой UIView
).
У вас будут одинаковые методы в каждом случае. И ему потребуется только реализовать протоколы UITableViewDelegate
и UITableViewDataSource
.
Смежные вопросы
- 1. Суперкласс для UITableViewController и UIViewController
- 2. UIViewController & UITableViewController - Настройки Страница
- 3. UITableViewController внутри UIViewController
- 4. Изменение UIViewController на UITableViewController
- 5. UItableViewController в другом UIViewController
- 6. UITableViewController автоматически нажимает UIViewController?
- 7. uitabbarcontroller + uitableviewcontroller + uiviewcontroller
- 8. UITableViewController vs UIViewController
- 9. Disapear UITableViewController от UIViewController
- 10. Список итераций - Общая логика
- 11. Общая логика домена?
- 12. Общая логика в реакции
- 13. Swift делегировать связь между uiviewcontroller и uitableviewcontroller
- 14. В чем разница между UIViewController и UITableViewController
- 15. функциональность UITableViewController в нормальной UIViewController
- 16. IOS Пользовательского UITableViewController внутри UIViewController
- 17. Расширить UIViewController в UITableViewController IOS
- 18. Использовать класс UIViewController для UITableViewController
- 19. переход от UIViewController к UITableViewController
- 20. segue от UIViewController до UITableViewController
- 21. Доступ к UIViewController из UITableViewController?
- 22. Экспресс: общая логика между router.post и router.get
- 23. Простая корзина: общая сумма (логика)
- 24. Общая логика сравнения для объектов
- 25. Общая логика просмотра в Django
- 26. Общая сумма из набора (логика)
- 27. Как декларировать UITableViewController в Unwind segue от UITableViewController до UIViewController
- 28. запуск UIViewcontroller из приложения UITableViewController сбой
- 29. Перейдите из UITableView (не UITableViewController) в UIViewController
- 30. IOS с MonoTouch - Изменение UIViewController к UITableViewController
Brilliant, превосходной идеей, мне не нужно никаких Ивар или свойства, только вспомогательные методы, так это прекрасно! – jjxtra
Хммм. Что вы предлагаете, если кому-то нужны дополнительные свойства? Я думал об этой же проблеме. Композиция не кажется идеальной, так как нам придется писать обертки для всех общих методов. – jweyrich
@ Расширение jonathan-cichon не может обеспечить реализацию, не так ли? В этом случае вы должны обеспечить такую же реализацию в UIViewController и UITableViewController? – DavidLiu