Настройка moreNavigationController в UITabBarController

Я нахожусь в процессе настройки представления «Дополнительно» в UITabBarController моего приложения.

Из того, что я вижу в документации, очень мало поддержки для его настройки . Существует только свойство UITabBarController только для чтения, называемое moreNavigationController, которое указывает на UINavigationController.

Это позволяет нам по крайней мере настроить его UINavigationBar. Настроить табличное представление, которое он представляет в первом контроллере представления, немного сложнее.

По другим вопросам здесь, по SO и в других местах, я ' Мы видели, что все разговоры вращаются вокруг возня с внутренней структурой moreNavigationController (например, наблюдение, что первый контроллер представления в стеке - это UITableViewController, замена его контроллера данных и т. д.). Проблема в том, что все эти методы делают предположения о том, как ведет себя недокументированный код в API, предположения, которые вряд ли пригодны для будущего.

Единственная альтернатива, которую я вижу здесь, - это развернуть свой собственный «дополнительный контроллер» (необязательно отказавшись от функции редактирования для сохраните реализацию довольно простой) и используйте его в качестве контроллера пятого представления на вкладке. Конечно, необходимо позаботиться о том, чтобы назначать последующие контроллеры представления пользовательскому «дополнительному контроллеру», а не напрямую UITabBarController (для обеспечения соблюдения этого правила может потребоваться подклассификация UITabBarController).

Какой подход вы бы выбрали? Какие другие решения вы бы предложили?

6
задан Mihai Damian 8 December 2010 в 15:33
поделиться