【转】iOS隐藏导航条1px的底部横线
默认情况下会有这条线
第一种方法:
1
2
3
4
5
6
|
UINavigationBar *navigationBar = self .navigationController.navigationBar; // white.png图片自己下载个纯白色的色块,或者自己ps做一个 [navigationBar setBackgroundImage:[UIImage imageNamed: @"white.png" ] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault]; [navigationBar setShadowImage:[UIImage new ]]; |
运行后效果如下(此处原有的灰色背景色会被white.png代替):
PS:这是唯一一个隐藏这条线的官方用法,但是有一个缺陷-删除了translucency(半透明)
第二种方法:
1)声明UIImageView变量,存储底部横线
1
2
3
|
@implementation MyViewController { UIImageView *navBarHairlineImageView; } |
2)在viewDidLoad中加入:
1
|
navBarHairlineImageView = [ self findHairlineImageViewUnder:navigationBar]; |
3)实现找出底部横线的函数
1
2
3
4
5
6
7
8
9
10
11
12
|
- (UIImageView *)findHairlineImageViewUnder:(UIView *)view { if ([view isKindOfClass:UIImageView. class ] && view.bounds.size.height <= 1.0) { return (UIImageView *)view; } for (UIView *subview in view.subviews) { UIImageView *imageView = [ self findHairlineImageViewUnder:subview]; if (imageView) { return imageView; } } return nil ; } |
4)最后在viewWillAppear,viewWillDisappear中处理
1
2
3
4
5
6
7
8
9
|
- ( void )viewWillAppear:( BOOL )animated { [ super viewWillAppear:animated]; navBarHairlineImageView.hidden = YES ; } - ( void )viewWillDisappear:( BOOL )animated { [ super viewWillDisappear:animated]; navBarHairlineImageView.hidden = NO ; } |
效果如下:
PS:第二种方法可以保持bar的translucent
本文出自 IT985博客
本文永久地址:http://blog.it985.com/9808.html
【转】iOS隐藏导航条1px的底部横线的更多相关文章
- iOS隐藏导航条1px的底部横线
第二种方法:1)声明UIImageView变量,存储底部横线 @implementation MyViewController { UIImageView *navBarHairlineImageVi ...
- iOS 隐藏导航条分割线
// 导航条分割线 @property (nonatomic, strong) UIView *navSeparateView; // 获取导航条分割线 UIView *backgroundView ...
- ios 修改导航条返回按钮
ios 修改导航条返回按钮 方式一:使用系统的:可以更改系统的文字:以及通过设置导航条的颜色来达到预期的效果 UIBarButtonItem *backBtns = [[UIBarButtonItem ...
- ios隐藏导航栏底线条和导航、状态栏浙变色
方法一遍历法: 在你需要隐藏的地方调用如下代码 [self findlineviw:self.navigationBar].hidden = YES; -(UIImageView*)findlinev ...
- iOS:导航条滚动透明度随着tableView的滚动而变化
来源:HelloYeah 链接:http://www.jianshu.com/p/b8b70afeda81 下面这个界面有没有觉得很眼熟.打开你手里的App仔细观察,你会发现很多都有实现这个功能.比如 ...
- iOS 隐藏导航栏下的黑线
一.找到导航栏下的黑线 // 寻找导航栏下的黑线 - (UIImageView *)findHairlineImageViewUnder:(UIView *)view { if ([view isKi ...
- iOS隐藏导航栏底部灰线
首先创建 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #de38a5 } span.s1 { } span.s ...
- [iOS]隐藏导航栏把右滑退出操作保留
项目因为用到上面导航栏样式多变,就隐藏了导航栏自己用View代替了,但手势却不见了,后来发现问题解决.操作如下: 千万不要取消 Shows Navigation Bar 这个选项否则手势会消失 应该是 ...
- Android和iOS隐藏状态条
Android: 在 AndroidManifest.xml 里 <activity android:theme="@android:style/Theme.NoTitleBar.Fu ...
随机推荐
- UVA 10003 Cutting Sticks 切木棍 dp
题意:把一根木棍按给定的n个点切下去,每次切的花费为切的那段木棍的长度,求最小花费. 这题出在dp入门这边,但是我看完题后有强烈的既是感,这不是以前做过的石子合并的题目变形吗? 题目其实就是把n+1根 ...
- POJ 3318 - Matrix Multiplication 第一次用随机化解决问题...
随机化还是很厉害的...印象最深的是以前手写快排~~一般加个随机化会使耗时不受输入数据的..时间更加稳定 这个题是人品题了...开始交了好多遍都过不了..多交几次终于过了... Program: #i ...
- table+js实现网站左侧列表下拉隐藏
<script language="javascript"> function showHide(obj){ ...
- PHP程序效率优化
1.在可以用file_get_contents替代file.fopen.feof.fgets等系列方法的情况下,尽量用 file_get_contents,因为他的效率高得多!但是要注意file_ge ...
- OC中两个关键字的作用:@property和@synthesize
两个关键字的使用:@property和@synthesize 一.@property关键字这个关键字是OC中能够快速的定义一个属性的方式,而且他可以设置一些值,就可以达到一定的效果,比如引用计数的问题 ...
- json(转)
转自:http://www.cnblogs.com/mcgrady/archive/2013/06/08/3127781.html 阅读目录 JSON的两种结构 认识JSON字符串 在JS中如何使用J ...
- 用过滤器和装饰者设计模式(静态代理)解决getParameter乱码问题
post的乱码问题比较好解决,这里主要是对get请求的乱码做处理 解决思路:增强request对象的getParameter方法,使之 getParameter 直接获取到的就是解决乱码后的数据 有 ...
- sqlite3插入日期时间出错解决
正确写法 insert into hhf_records(RegistrationNumber,MachinesNumber,InDataTime,Flag,CType) values (11,1,d ...
- crontab Linux定时器工具
要使用crontab定时器工具,必须要启动cron服务: service cron start crontab的语法,以备日后救急.先上张超给力的图: crontab各参数说明: -e : 执行文字编 ...
- Eclipse 修改编码格式
在Eclipse的开发使用中,我们经常使用的是UTF-8,但是刚刚安装的或者是导入的项目是其他编码的默认是GBK的,这就造成我们的项目乱码,一些中文解析无法查看,对我们的开发造成不便. 修改工作空间默 ...