Я нахожусь в процессе настройки представления «Больше» в UITabBarController моего приложения.
Из того, что я вижу в документах, очень мало поддержки для его настройки.Существует только свойство UITabBarController, предназначенное только для чтения, называемое moreNavigationController, которое указывает на UINavigationController.
Это позволяет нам по крайней мере настроить его UINavigationBar.Настроить табличное представление, которое он представляет в первом контроллере представления, немного сложнее.
По другим вопросам здесь, в SO и в других местах, я видел, что все разговоры вращаются вокруг работы с внутренней структурой moreNavigationController (длянапример, наблюдая, что первым контроллером представления в стеке является UITableViewController, заменяя его контроллером данных и т. д.).Проблема заключается в том, что все эти методы делают предположения о том, как ведет себя недокументированный код в API, предположения, которые вряд ли пригодны для будущего.
Единственная альтернатива, которую я вижу здесь, - это свернуть мой собственный «дополнительный контроллер» (опционально отключениеотредактируйте функциональность, чтобы реализация была довольно простой), и используйте ее в качестве пятого контроллера представления на вкладке.Конечно, необходимо позаботиться о том, чтобы назначить последующие контроллеры представления пользовательскому «большему количеству контроллеров», а не непосредственно UITabBarController (для обеспечения соблюдения этого правила может потребоваться создание подкласса UITabBarController).
Какой подход вы бы выбрали?Какие еще решения вы бы предложили?