隐藏或者设置导航栏底部线

一、系统默认导航栏底部的线是什么?

系统默认的导航栏底部的线条,是一个高度为0.5的iamgeView,因为有默认的default shadow image,所以看上去是一条有颜色线。

二、怎么去除或者重新设置导航栏下的“线条”?

摘自文档:

/* Default is nil. When non-nil, a custom shadow image to show instead of the default shadow image. 
For a custom shadow to be shown, a custom background image must also be set with -
setBackgroundImage:forBarMetrics: (if the default background image is used, the default shadow 
image will be used).
 */
@property(nullable, nonatomic,strong) UIImage *shadowImage NS_AVAILABLE_IOS(6_0) 
UI_APPEARANCE_SELECTOR;

文档解释了导航栏下的那条线是什么?应该怎么设置的办法。

设置如下:

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"nav_bg_all"] forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setShadowImage:[UIImage alloc] init];

通过setShadowImage来设置导航栏底部imageView的shadowImage,同时通过设置导航栏背景图,这种设置才生效,这是苹果文档给出的设置方法,很简单,也很实用。

猜你喜欢

转载自blog.csdn.net/Morris_/article/details/81235923