首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS小技能:设置状态栏背景颜色(图片)

引言 设置状态栏背景颜色的解决方案: 使用新的API 【statusBarManager】 通过安全区域高度判断是否IphoneX之后的机型:if ([UIApplication sharedApplication...].delegate.window.safeAreaInsets.bottom > 0) I 状态栏背景颜色的适配方案 问题 [Bugly] Trapped uncaught exception '...(电池栏)都是有颜色的,并且都是不透明的,上面这个方法完全可以应付。...通过上面的代码获取statusBar时,发现每次每次获取都调用 alloc:init的方法,重新生成一个statusBar;然后添加到UIApplication的keyWindow上,再设置背景颜色。...因此这个方法多次调用就会创建多份statusBar,造成内存开销不说,想设置状态栏为为透明,根本没效果。 解决办法:既然定位到问题所在,办法就是保证iOS 13 之后,每次也都能拿到有去只有一个对象。

1.9K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android状态栏颜色修改

    前言 Android 4.4(API 19)之后,就提供了修改状态栏颜色的方法,但是在 Android 6.0(API 23)之后,才支持修改状态栏上面的文字和图标颜色,默认是白色的。...所以会导致一个问题,在 4.4 到 6.0 之间的系统,状态栏设置为浅色的话,状态栏上面白色的文字和图标会看不清 有一些第三方的系统提供了设置状态栏状态栏文字、图标颜色的方法,比如小米的MIUI和魅族的...Flyme,所以考虑了下比较好的实现方式是: Android 4.4 以上使用 SystemBarTint 修改状态栏颜色; Android 6.0 以上使用系统方法修改状态栏字体、图标颜色; Android...当然,这里面也会有坑,比如 MIUI 提供的修改状态栏字体颜色方法会跟 Android 系统自带的方法冲突,官方说明如下: 关于MIUI状态栏字符颜色逻辑调整说明 经过网上的资料和自己的尝试,MIUI...基于上面的思考,封装了设置 Android 4.4 以上系统状态栏颜色状态栏字体、图标颜色的方法: 首先,需要引入 SystemBarTint 库: dependencies { implementation

    4K30

    iOS状态栏设置

    状态栏配置 iOS状态栏的设置有两种方式 这两种方式是根据UIViewControllerBasedStatusBarAppearance也就是View controller-based status...UIView 设置该UIView的frame.size 和statusBar大小一样 设置该UIView的frame.origin 为{0,-20} 设置该UIView的背景色为你希望的statusBar的颜色...UINavigationBar.appearance(); //在早期版本上设置 不能全局的方式设置 会导致app崩溃 //appear.translucent = false; //设置bar的颜色...appear.setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default) appear.shadowImage = UIImage(); //设置左右两侧的颜色...UIBarMetrics.Default) appear.shadowImage = UIImage(); 5) 在translucent=true也就是透明时,如果用扇面的方式去掉navigationBar下的黑线,会导致状态栏颜色

    2.7K11

    android自定义状态栏颜色

    我们知道IOS上的应用,状态栏颜色总能与应用标题栏颜色保持一致,用户体验很不错,那安卓是否可以呢?...若是在安卓4.4之前,答案是否定的,但在4.4之后,谷歌允许开发者自定义状态栏背景颜色啦,这是个不错的体验!...win.setAttributes(winParams);        }   需注意的是, tintManager.setStatusBarTintResource(R.color.top_bg_color);这一步的颜色值...(即把你的状态栏颜色与你的标题栏颜色保持一致)要写在color.xml中去,如果用Color.praseColor则会报错。...状态栏高度算法: /**            * 状态栏高度算法            * @param activity            * @return            *

    1.8K60

    Android系统更改状态栏字体颜色

    随着时代的发展,Android的状态栏都不是乌黑一片了,在Android4.4之后我们可以修改状态栏颜色或者让我们自己的View延伸到状态栏下面。...我们可以进行更多的定制化了,然而有的时候我们使用的是淡色的颜色比如白色,由于状态栏上面的文字为白色,这样的话状态栏上面的文字就无法看清了。...因此本文提供一些解决方案,可以是MIUI6+,Flyme4+,Android6.0+支持切换状态栏的文字颜色为暗色。...Android6.0+ Android 6.0开始,谷歌官方提供了支持,在style属性中配置android:windowLightStatusBar 即可, 设置为true时,当statusbar的背景颜色为淡色时...,statusbar的文字颜色会变成灰色,为false时同理。

    2.4K60

    两步设置状态栏字体颜色

    https://blog.csdn.net/u010105969/article/details/48297207 之前写过设置状态栏字体颜色的方法即第二种方法,最近又学习一种一步搞定的方法即第一种方法...第一种方法:(如果在NavigationController中需做些设置,后文会提到) // 设置状态栏颜色为白色 - (UIStatusBarStyle)preferredStatusBarStyle...returnUIStatusBarStyleLightContent; } 第二种方法: 第一步在plist文件中添加View controller–based status bar appearance 为NO 第二步://设置状态栏字体颜色...    [application setStatusBarStyle:UIStatusBarStyleLightContent]; 补充: 第二种方法是在iOS9之前使用的,iOS9之后就不被建议使用了...补充"中修改状态栏颜色的代码并不能改变状态栏颜色,要想在NavigationController改变状态栏颜色需要重写NavigationController的preferredStatusBarStyle

    1.8K10

    iOS状态栏使用总结

    目录: 一、状态栏与导航栏 二、设置状态栏显隐与字体样式 三、设置状态栏背景色 四、启动页隐藏状态栏 五、状态栏、导航栏相关的常用宏定义 相关文章:iOS导航栏的使用总结 一、状态栏与导航栏 状态栏...:显示时间、电池等信息 导航栏:显示app页面标题,返回按钮等 iOS7之前:状态栏与导航栏是分开的; iOS7之后:状态栏与导航栏合在一起;导航部分总高度(64)= 状态栏高度(20) +导航栏内容高度...((44) iPhoneX设备出现以后,状态栏的高度变为44,导航栏部分总高度(88) = 状态栏(44) + 导航栏内容高度(44) 二、设置状态栏显隐与字体样式 iOS状态栏可以设置显示和隐藏,也可以设置文字的颜色...方法2:代码设置 //1.设置状态栏隐藏(YES)或显示(NO) [[UIApplication sharedApplication] setStatusBarHidden:NO]; //2.设置状态栏字体颜色...,状态栏文字为白色 self.navigationController.navigationBar.barStyle = UIBarStyleBlack; 三、设置状态栏背景色 iOS7之后的状态栏和导航栏融合在一块

    1.9K30
    领券