UINavigationController TitleView未从ViewController NavigationItem中显示

Chu*_*ert 5 iphone cocoa-touch uinavigationcontroller xamarin.ios

每当我在横向上添加一个viewController到navigationController时,标题视图会出现在某些视图上,但不会显示在其他视图上.即:我有一个导航控制器,添加3个视图控制器,前两个适当地显示titleview,第三个没有显示一个.但导航控制器从ViewController中抓取了titleview,就像它应该的那样,我将它的值写入控制台并且它是正确的,但它不会出于任何原因在屏幕上显示.有任何想法吗?

哦,是的,在纵向方向上工作得很好.

这是另一个有趣的部分,如果我将故障视图控制器推入横向的navigationController中,titleView不在那里,然后没有任何用户交互,我将设备旋转回肖像并出现titleView,然后我将设备旋转回横向它留了下来!

这就像我的TitleView的绘图被阻止了,即使我使用了InvokeOnMainThread.在该调用期间,主线程(或任何地方)没有任何东西在运行.

这是我的结构:

Window
  TabBarController 
    NavigationController 
      ViewController
    NavigationController
      ViewController
Run Code Online (Sandbox Code Playgroud)

这是我的操作顺序:

  1. 创建视图控制器
  2. 添加标题视图以查看控制器
  3. 将View Controller推送到NavigationController(InvokeOnMainThread)

Ome*_*mer 4

您是否尝试过在按下控制器后设置控制器标题?这种行为发生在我身上,确保标题出现的方法是在 viewDidLoad 或 viewWillAppear 方法中强制设置 navBar 标题,如下所示:

self.navigationController.navigationBar.topItem.title = @"The title";
Run Code Online (Sandbox Code Playgroud)

或者

self.navigationItem.title = @"The Title";
Run Code Online (Sandbox Code Playgroud)

我遇到的另一件事是在 viewDidLoad 方法中设置导航栏的 leftBarButton 或 RightBarButton 没有成功,但在 viewWillAppear 方法中设置栏按钮时它们显示正确。

希望这可以帮助。