Я, вероятно, получу выстрел в голову за то, что сделаю подобное предложение, но все равно сделаю это:
Изучая программирование на iOS, я потратил много времени на изучение (как и большинство людей -и как говорится в каждом учебном пособии на планете) о том, как использовать навигационные представления и панели инструментов, а также все стандартные представления типов, которые помогают в различных типах навигации.
В последнем приложении, над которым я работал- Я потратил много времени и разочарований, пытаясь выяснить, как лучше всего охарактеризовать то, что я делал, и, более того, пытаясь вписать это в то, что платформы iOS будут использовать для реализации этого материала.Тогда (конечно) я застрял, пытаясь заставить вещи делать то, что они не должны были - например, когда представление навигации не позволяло мне использовать кнопку «назад», чтобы выпрыгнуть из иерархии навигации, которую я настроили т. д.
Вкратце - когда я перестал беспокоиться о специфике того, что представляют собой все эти различные типы представлений и контроллеров - и как они взаимодействовали и как я предполагал сделать это -и начал беспокоиться о том, как я хочу, чтобы мое приложение работало - и работало на основе общих представлений, пользовательских панелей инструментов и т. д. - в целом мысль имела гораздо больше смысла.
В моем случае мне понравился внешний вид-чувство приложения Mapquest - и то, как оно работает с панелями инструментов, которые вы можете открывать и закрывать сверху и снизу экрана - с кнопками - которые могут переключаться на другие виды и т. д. Поэтому я начал использовать «универсальный»представления для реализации этой функциональности - и все это вместе сошлось.
Итак, вкратце:
1.Я бы решил, как вы хотите, чтобы он выглядел и что вы хотите, чтобы он делал
Используйте стороннее приложение в качестве источника вдохновения, если это необходимо
Решите, когда / где / применимы ли некоторые из «стандартных» практик, и используйте их там, где и когда.
Веселитесь!
-BKG