当我使用它时:[self.navigationItem setHidesBackButton:YES animated:NO];
隐藏导航栏中的后退按钮,我的标题不会居中。打印就像按钮仍在那里。
有谁知道为什么会发生这种情况,以及如何解决这个问题?
编辑:
我的程序是这样的:我的rootViewController是一个导航控制器,我设置它以便隐藏导航栏。然后我推到另一个UIViewController,我让导航栏再次出现,但让后退按钮消失。
我尝试了设置self.navigationItem.backBarButtonItem = nil;
,但没有让后退按钮消失。
以下是一些参考图片:
答案 0 :(得分:55)
viewController.navigationItem.hidesBackButton = YES;
这完美无缺!
答案 1 :(得分:13)
刚刚使用过它并且有效。
[self.navigationItem setHidesBackButton:YES animated:NO];
self.navigationItem.titleView.center = self.navigationController.navigationBar.center;
答案 2 :(得分:6)
设置self.navigationItem.backBarButtonItem = nil;
答案 3 :(得分:1)
您遇到的问题是因为您没有更改导航栏的构成,您只是隐藏了它的一部分。当您设置按钮的隐藏值时,您正在这样做,隐藏它,而不是删除它。它仍将占用空间。要解决您的问题,您需要删除该按钮,然后当您希望使用能够导航时,只需添加您的按钮即可。
但实际上,如果您遇到这样的显示问题,您应该重新考虑导航栏的UI设计并尝试提供更有效的按钮标题。
答案 4 :(得分:1)
您正在设置的属性是指当导航控制器堆栈中的“后退”项目时“自我”的表示方式。我假设您在“工作日历”视图控制器中设置此项,除非该控制器具有更多子视图,否则它将无法工作。
尝试将导航栏leftButtonItem属性设置为nil。