您的位置:首页 > 移动开发 > IOS开发

iOS 导航条背景透明

2015-09-11 20:05 232 查看
1.创建一个全局变量_navBackView

@interface ViewController ()
{
UIView *_navBackView;
}
@end

2.将getBackView:方法复制粘贴到代码中

-(void)getBackView:(UIView*)superView
{
if ([superView isKindOfClass:NSClassFromString(@"_UINavigationBarBackground")])
{
//移除分割线
for (UIView *view in superView.subviews)
{
if ([view isKindOfClass:[UIImageView class]])
{
[view removeFromSuperview];
}
}
_navBackView = superView;

_navBackView.backgroundColor = [UIColor yellowColor];
_navBackView.alpha = 0;
}
else if ([superView isKindOfClass:NSClassFromString(@"_UIBackdropView")])
{
//_UIBackdropEffectView是_UIBackdropView的子视图,这是只需隐藏父视图即可
superView.hidden = YES;
}

for (UIView *view in superView.subviews)
{
[self getBackView:view];
}
}

3.在页面即将出现时调用此方法,传入参数为self.navigationController.navigationBar

-(void)viewDidAppear:(BOOL)animated
{

[self getBackView:self.navigationController.navigationBar];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: