Answers:
目标C:
self.navigationItem.hidesBackButton = YES;
迅速:
navigationItem.hidesBackButton = true
self.navigationItem.leftBarButtonItem = nil;
。如果您明确设置了leftbarbuttonitem,则可以使用self.navigationItem.leftBarButtonItem = nil;
。self.navigationItem.hidesBackButton = YES;
将隐藏“后退”按钮项
最好的方法是将它们组合在一起,因此即使您手动设置它也将隐藏后退按钮:
self.navigationItem.leftBarButtonItem=nil;
self.navigationItem.hidesBackButton=YES;
隐藏带有波纹管代码的后退按钮...
[self.navigationItem setHidesBackButton:YES animated:YES];
要么
[self.navigationItem setHidesBackButton:YES];
另外,如果您有自定义,请UINavigationBar
尝试以下代码
self.navigationItem.leftBarButtonItem = nil;
使用代码:
self.navigationItem.backBarButtonItem=nil;
别忘了我们现在有滑动手势。您可能还希望删除它。如有必要,请不要忘记再次启用它。
if ([self.navigationItem respondsToSelector:@selector(hidesBackButton)]) {
self.navigationItem.hidesBackButton = YES;
}
if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
}
在您的视图控制器中添加此代码
UIView *myView = [[UIView alloc] initWithFrame: CGRectMake(0, 0, 300, 30)];
UIBarButtonItem *btnL = [[UIBarButtonItem alloc]initWithCustomView:myView];
self.navigationItem.leftBarButtonItem = btnL;
对我来说,以上所有方法似乎都不起作用,它没有视觉效果。我使用情节提要板时,其视图已“嵌入”在导航控制器中。
然后,我在代码级别添加我的menuItems,由于某种原因,在视觉上调试视图层次时,“ backButton”是可见的,并且menuItem图标显示在不可见的“后退按钮”下方。
我尝试了各种钩子方法所建议的设置,但没有效果。然后,我尝试了一种更野蛮的方法,并遍历了子视图,该视图也没有效果。
我检查了我的图标大小,看起来还可以。参考苹果的《人机界面指南》后,我确认我的图标正确。(在我的情况下,缩小1像素24像素48像素72像素)。
那么最奇怪的部分是实际的修复方法...
添加BarButton项时,为其提供至少一个字符的标题,在我的情况下为空格字符。
希望这对某人有帮助。
//left menu - the title must have a space
UIBarButtonItem *leftButtonItem = [[UIBarButtonItem alloc] initWithTitle:@" " <--THE FIX
style:UIBarButtonItemStylePlain
target:self
action:@selector(showMenu)];
leftButtonItem.image = [UIImage imageNamed:@"ic_menu"];
[self.navigationItem setLeftBarButtonItem:leftButtonItem];
试试这个-
self.navigationController?.navigationItem.hidesBackButton = true
在c#或Xamarin.ios中,this.NavigationItem.HidesBackButton = true;