UINavigationBar
和 UINavigationItem
是iOS开发中常用的控件。今天给大家介绍一下六个关于导航栏的小技巧。
self.title = @"iOS开发:iOSDevTip";
设置方法:
[self.navigationController.navigationBar setBarStyle:UIBarStyleBlack];
UIBarStyle
的样式:
typedef NS_ENUM(NSInteger, UIBarStyle) { UIBarStyleDefault = 0, UIBarStyleBlack = 1, UIBarStyleBlackOpaque = 1, // Deprecated. Use UIBarStyleBlack UIBarStyleBlackTranslucent = 2, // Deprecated. Use UIBarStyleBlack and set the translucent property to YES };
UIBarStyleDefault
是默认样式, UIBarStyleBlack
是黑色不透明。 UIBarStyleBlackOpaque
和 UIBarStyleBlackTranslucent
这两个已经废弃了。
如果想设置导航栏透明,可以加上下面这句代码:
self.navigationController.navigationBar.translucent = YES;
self.navigationItem.title = @"test";
比较笨的方法是:
self.navigationItem.title = @"";
还可以这样设置:
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"back" style:UIBarButtonItemStylePlain target:self action:@selector(back:)]; - (void)back:(id)sender { [self.navigationController popViewControllerAnimated:YES]; }
如果按上一步设置 leftBarButtonItem
之后,左滑返回手势就会失效。设置一下 UIGestureRecognizerDelegate
代理即可:
self.navigationController.interactivePopGestureRecognizer.delegate = self;
以上是六个关于导航栏的小技巧。更多iOS开发相关的技术,请关注我的微信公众号iOS开发: iOSDevTip