1
我正在创建一个通用的可重用UIViewController组件,人们可以将它添加到其应用程序中。它需要一个导航栏在顶部,它将添加一些按钮。检测UIViewController是否在现有UINavigationController中运行
我可以轻松创建导航栏并添加按钮,但如果开发人员使用我的组件将视图添加为现有导航结构的一部分,则它们最终可能会包含2个导航栏。
换句话说,如果我的观点是装有:
[self.navigationController pushViewController:controller animated:YES];
那么它不应该添加一个导航栏,用什么已经存在。如果视图加载了:
[self presentModalViewController:controller animated:YES];
那么它应该添加自己的导航栏。
不需要开发人员使用我的控制器来做一些像useNavBar:YES,有没有办法自动做到这一点?
类似于[self isRunningInsideANavigationController]或[self hasNavigationBar]会做的事情。
谢谢,我不确定这将是一种可靠的方式。但幸运的是,这是简单的:) –