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

Android更改状态栏颜色

2015-09-09 15:11 621 查看
为了使应用显示风格保持一致,需要更改状态栏的颜色,不是单一的黑色,android版本4.4之后可以进行修改。

首先,可以在style.xml文件下允许状态栏和导航栏,

<style name="AppTheme" parent="AppBaseTheme">

<!-- Status Bar -->
<item name="android:windowTranslucentStatus">true</item>
<!-- Navigation Bar -->
<item name="android:windowTranslucentNavigation">true</item>
</style>


也可以在代码中设置

//透明状态栏
getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
//透明导航栏
getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);


在AndroidManifest中的minSdkVersion要设置为19及以上,之后设置属性,需要导入SystemBarTintManager类

// 创建状态栏的管理实例

SystemBarTintManager tintManager = new SystemBarTintManager(getActivity());

// 激活状态栏设置

tintManager.setStatusBarTintEnabled(true);

// 激活导航栏设置

tintManager.setNavigationBarTintEnabled(true);

// 设置一个颜色给系统栏

tintManager.setStatusBarTintResource(R.color.status_color);

在布局文件的父控件中添加属性,android:fitsSystemWindows="true",作用是布局内容从状态栏下面开始,

但我使用之后会出现一条很宽的白色的条形,我就没有设置这个属性,让内容是从顶部开始的,然后加大标题的长度。

(我的标题栏是隐藏了的,自己设置的一个标题栏。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: