UINavigationController
可以覆盖哪些事件来访问当前视图控制器?
我的最终目标是检查导航控制器中的当前屏幕以确定是否调用SetNavigationBarHidden
.
UINavigationController
可以覆盖哪些事件来访问当前视图控制器?
我的最终目标是检查导航控制器中的当前屏幕以确定是否调用SetNavigationBarHidden
.
让 UINavigationController 子类采用 UINavigationControllerDelegate 协议怎么样?然后实现与 navigationController:willShowViewController:animated: 或 navigationController:didShowViewController:animated: 等价的 monotouch。这些方法中的每一个都传递一个参数,该参数是指向“正在显示其视图和导航项属性的视图控制器”的指针。您必须记住让导航控制器成为自己的委托。
如果“当前”是指“当前可见”,则可以使用 UINavigationController 的VisibleViewController属性。虽然如果你使用 MT.D,你会想把它扔掉:
var currentViewController = (DialogViewController)myNavController.VisibleViewController
或者,您可以直接访问 ViewController 数组。或者...您也可以继承 DialogViewController 并在实现中设置 NavigationBar.Hidden = true。