透明导航条

本文将介绍如何在iOS应用中初始化透明Navbar,并详细解释相关代码逻辑,包括设置状态栏样式、导航栏背景图片及阴影处理。适用于iOS开发者进行深入理解与实践。

/**
 *  初始化透明Navbar
 */
- (void)initlizerNavBarStype
{
    
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
    self.navigationController.navigationBar.translucent = YES;
    self.navigationController.navigationBar.barTintColor = UIColorFromRGB(0xeff1f7);//AllBackColor;//
//    UIImage *barImage =  [[UIImage imageNamed:@"navbar_bg_white"] stretchableImageWithLeftCapWidth:10 topCapHeight:10];
    UIImage *barImage = [[UIImage imageNamed:@"navbar_bg"] stretchableImageWithLeftCapWidth:10 topCapHeight:10];
    [self.navigationController.navigationBar setBackgroundImage:barImage forBarMetrics:UIBarMetricsDefault];
    [self translucentBaseInitlizerUI];
    
}

//去透明NavBar后的阴影
- (void)translucentBaseInitlizerUI
{
    [self.navigationController.navigationBar setTranslucent:YES];
    //    为什么要加这个呢,shadowImage 是在ios6.0以后才可用的。但是发现5.0也可以用。不过如果你不判断有没有这个方法,
    //    而直接去调用可能会crash,所以判断下。作用:如果你设置了上面那句话,你会发现是透明了。但是会有一个阴影在,下面的方法就是去阴影
    if ([self.navigationController.navigationBar respondsToSelector:@selector(shadowImage)])
    {
        [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];
    }
    //    以上面4句是必须的,但是习惯还是加了下面这句话
    [self.navigationController.navigationBar setBackgroundColor:[UIColor clearColor]];
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值