美文网首页
【转】 iOS 设置导航透明的两种方法

【转】 iOS 设置导航透明的两种方法

作者: 西江月 | 来源:发表于2017-03-22 17:52 被阅读27次

方法一

在当前页面加入下面方法

- (void)viewWillAppear:(BOOL)animated{

[superviewWillAppear:animated];

[self.navigationController.navigationBarsetBackgroundImage:[UIImagenew]forBarMetrics:UIBarMetricsDefault];

//去掉导航栏底部的黑线

self.navigationController.navigationBar.shadowImage= [UIImagenew];

}

如果仅设置当前页导航透明,需加入下面方法

- (void)viewWillDisappear:(BOOL)animated{

[superviewWillDisappear:animated];

[self.navigationController.navigationBarsetBackgroundImage:nilforBarMetrics:UIBarMetricsDefault];

[self.navigationController.navigationBarsetShadowImage:nil];

}

需要注意的是:如果返回上一页的操作有动画,则在上一页出现的时候,导航栏的颜色会逐渐变化

方法二

- (void)viewWillAppear:(BOOL)animated{

[superviewWillAppear:animated];

[[self.navigationController.navigationBarsubviews]objectAtIndex:0].alpha=0;

}

仅设置当前页面

- (void)viewWillDisappear:(BOOL)animated{

[superviewWillDisappear:animated];

[[self.navigationController.navigationBarsubviews]objectAtIndex:0].alpha=1;

}

个人感觉:方法二比方法一更为简单,而且效果也好

原文:http://blog.csdn.net/j_r_k/article/details/52806702

相关文章

网友评论

      本文标题:【转】 iOS 设置导航透明的两种方法

      本文链接:https://www.haomeiwen.com/subject/sozonttx.html