美文网首页
隐藏_UIBarBackground以及子控件

隐藏_UIBarBackground以及子控件

作者: 有理想有暴富的小青年 | 来源:发表于2017-05-11 17:00 被阅读567次

推荐两篇文章 https://my.oschina.net/sayonala/blog/511490

http://www.jianshu.com/p/c26f1e36263f

第一篇使用runtime解决 看不懂 看了第二篇结合自己经验解决了

需要将上图中的那条线隐藏掉  遍历self.navigationController.navigationBar.subviews
并不能隐藏掉它  然后看层 百科  它是属于上层的 _UIBarBackground 的(注意前面的下划线不要丢) 所以就变成隐藏_UIBarBackground
这个东西了 上代码:

for (UIView  * v in self.navigationController.navigationBar.subviews){

UIView  * bgview=nil;

NSString * classname = NSStringFromClass([v class]);

if ([classname isEqualToString:@"_UINavigationBarBackground"] || [classname isEqualToString:@"UINavigationBarBackground"])

{

bgview=v;

break;

} else if ([classname isEqualToString:@"_UIBarBackground"]) {

bgview = v;

for (UIView *vi in v.subviews) {

// 适配iOS10

NSString *viName = NSStringFromClass([vi class]);

if ([viName isEqualToString:@"UIImageView"]) {

vi.hidden = YES;

break;

}

}

}

}

相关文章

网友评论

      本文标题:隐藏_UIBarBackground以及子控件

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