(iOS开发)iOS 9之后状态栏修改的方式

本文介绍了如何在iOS9及以后版本中使用推荐的API来控制状态栏的显示与隐藏,并调整其样式。提供了具体的实现方法及如何根据条件动态改变状态栏的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

iOS 9之前是使用如下代码来设置状态栏的隐藏,修改样式

[[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];

 [[UIApplication sharedApplication]setStatusBarHidden:NO];

但是,iOS 9之后苹果建议使用prefer的API,如下:
//是否隐藏状态栏
-(BOOL)prefersStatusBarHidden
{
   return YES;
}

//修改状态栏的样式
-(UIStatusBarStyle)preferredStatusBarStyle
{
    return UIStatusBarStyleBlackTranslucent;
}

但是在最后,如果在视图已经展示了的时候,你却又想要修改状态栏,那么就可以在上面的2个方法中添加判断语句,然后再调用上述方法:

-(BOOL)prefersStatusBarHidden
{
    if (isWidthBiggerThanHeight==1) {
        return NO;
    }else
    {
        return YES;
    }
}

最后,切记调用一下方法来刷新状态栏的样式和状态---

//刷新状态栏的状态---
[self setNeedsStatusBarAppearanceUpdate];



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值