我为导航栏实现了自定义标题视图,其中包含图像和标签。通过将其origin.x设置为10像素,此视图与条形图的左侧对齐。
到目前为止一切顺利,但是当我按下视图控制器然后返回主屏幕时,标题视图居中而不是位于左侧。
我尝试将其左侧和后侧栏按钮项设置为nil,将其origin.x设置为10,但似乎没有任何效果。我尝试了viewWillAppear和viewDidAppear:
CGRect frame = self.navigationItem.titleView.frame;
frame.origin.x = 10;
self.navigationItem.titleView.frame = frame;
self.navigationItem.backBarButtonItem = nil;
self.navigationItem.leftBarButtonItem = nil;
我该如何做到这一点?
答案 0 :(得分:1)
首先你应该在viewDidLoad中设置navigationItem(在调用[super viewDidLoad]之后)NOT viewWill / DidAppear。
您是仅在第二个视图控制器上设置navigationItem而不是主要的vc ???
如果需要,您需要在两者上设置navigationItem,或者在两个视图控制器应该子类化的Base View Controller类中设置。