产生黑线的原因:
如上述图片所示,默认情况下,导航栏会设置一个默认图片【黑线】给shadowImage,这就是黑线的由来。 查了网上的解决方法,有以下两种: 1.在viewWillAppear方法中设置一个图片给shadowImage,或者将其设置为透明; 2.将UINavigationBar的clipsToBounds属性设成YES。(clipsTobounds会同时裁剪导航栏上方,可能会导致背景色不一致);故而上述需求的解决方法有:
1.在viewWillAppear中设置其为透明
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController nvTransparentClearNavigationShadowImage];
}
复制代码
2.在viewwillAppear中设置shadowImage
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController nvTransparentSetNavigationBarShandowImage:[UIImage new]];
}
复制代码