android开发 修改标题栏背景_android 开发 修改系统背景(状态栏颜色、导航栏颜色、标题栏颜色等等)...

正常方式

1、打开values下的styles.xml

发现有以下代码:

@color/myBarColor

@color/myBarColor

@color/colorAccent

那么其中的colorPrimary、colorPrimaryDark、colorAccent分别代表什么呢?看下图就可以一目了然:

fe2f2957bcdf3b66a248923d9fbeb57c.png

2、更改colorPrimary和colorPrimaryDark

将colorPrimary、colorPrimaryDark的颜色换成你需要改变的颜色即可。

比如,我在values/colors.xml中定义了颜色:

#0682AF

那么将colorPrimary、colorPrimaryDark的颜色换成@color/myBarColor即可:

@color/myBarColor

@color/myBarColor

其他方式,第一种方法:

1、隐藏状态栏

在onCreate方法里面添加页面状态

View decorView = getWindow().getDecorView();//获取屏幕的decorView

decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);//设置全屏

2.修改状态栏的背景

在setContentView();方法 上方添加代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

Window window = getWindow();

//设置修改状态栏

window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

//设置状态栏的颜色,和你的app主题或者标题栏颜色设置一致就ok了

window.setStatusBarColor(getResources().getColor(R.color.umeng_blue));

}

其他方式,第二种方法:

1、在setContentView()之前添加:

private static void setAndroidNativeLightStatusBar(Activity activity, boolean dark) {

View decor = activity.getWindow().getDecorView();

if (dark) {

decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);//设置全屏和状态栏字体颜色

} else {

decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);//设置全屏和状态栏字体颜色

}

getWindow().setStatusBarColor(Color.parseColor("#696969"));// 设置状态栏为灰色

}

2、在布局文件xml中添加预留任务栏控件

android:fitsSystemWindows="true"

获取状态栏高度

/**

* 获取状态栏高度

* @param context

* @return

*/

public static int getStatusBarHeight(Context context) {

Resources resources = context.getResources();

int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");

int height = resources.getDimensionPixelSize(resourceId);

return height;

}

Android 修改底部导航栏navigationbar的颜色

Android 修改底部导航栏navigationbar的颜色 getWindow().setNavigationBarColor(Color.BLUE); //写法一 getWindow().set ...

Android 4.4 沉浸式透明状态栏与导航栏

Android 系统自4.2 開始 UI 上就没多大改变,4.4 也仅仅是添加了透明状态栏与导航栏的功能,如图 那么如今我就来给大家解说下怎样使用这个新特性,让你的 app 尾随潮流,当然假设你不在乎 ...

兼容 Android 4.4 透明状态栏与导航栏

http://www.apkbus.com/Android-163388-1-1.html?_dsign=73d41229 android 系统自4.2 开始 UI 上就没多大改变,4.4 也只是增加 ...

iOS 更改状态栏、导航栏颜色的几种方法

ios上状态栏 就是指的最上面的20像素高的部分状态栏分前后两部分,要分清这两个概念,后面会用到: 前景部分:就是指的显示电池.时间等部分:背景部分:就是显示黑色或者图片的背景部分: (一)设置sta ...

android 自己定义状态栏和导航栏分析与实现

效果 android 4.4之后,系统是支持自己定义状态栏和导航栏的.举个最典型的样例就是bilibiliclient了(iOS版本号和android版本号能用两套全然不一样符合各自系统的设计ui,良 ...

Android 5.0状态栏和导航栏

Material Design推出之后,app中也開始沿用这样的风格 今天来说一下状态栏颜色设置,在4.4的时候推出了透明状态栏和导航栏.在不使用第三方库的情况下,4.4还是没有全然解决存在actio ...

Android隐藏状态栏、导航栏

Android隐藏状态栏.导航栏 private void hideStatusNavigationBar(){ if(Build.VERSION.SDK_INT<16){ this.getWi ...

App开发流程之状态栏和导航栏

记录状态栏和导航栏的设置和控制,统一在基类视图控制器中完成. 状态栏. 状态栏高度为20,iOS7以后背景完全透明. 样式枚举如下: typedef NS_ENUM(NSInteger, UIStat ...

android开发中系统自带语音模块的使用

android开发中系统自带语音模块的使用需求:项目中需要添加语音搜索模块,增加用户体验解决过程:在网上搜到语音搜索例子,参考网上代码,加入到了自己的项目,完成产品要求.这个问题很好解决,网上能找到很 ...

随机推荐

C&num;调用天气查询服务

先引入天气查询服务 1.有点引用导入服务引用 //实例化            web引用名.WeatherWebService cn = new web引用名.WeatherWebService() ...

abbyy cup a

link: http://codeforces.com/contest/331/problem/A2 /* ID: zypz4571 LANG: C++ TASK: abby_a.cpp */ #in ...

刀哥多线程全局队列gcd-09-global&lowbar;queue

全局队列 是系统为了方便程序员开发提供的,其工作表现与并发队列一致 全局队列 & 并发队列的区别 全局队列 没有名称 无论 MRC & ARC 都不需要考虑释放 日常开发中,建议使用& ...

Linux Kernel 整数溢出漏洞

漏洞名称: Linux Kernel 整数溢出漏洞 CNNVD编号: CNNVD-201311-062 发布时间: 2013-11-07 更新时间: 2013-11-07 危害等级:    漏洞类型: ...

jquery利用event&period;which方法获取键盘输入值的代码

jquery利用event.which方法获取键盘输入值的代码,需要的朋友可以参考下. 实例 显示按了哪个键: $("input").keydown(function(event) ...

Garbage

垃圾回收 http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/ http://blog.jobbole ...

TCP与UDP各自特点对比

UDP和TCP是我们最常用的两种通信方式,下面就两者之间的特点做一个对比: 1.UDP主要用在实时性要求高以及对质量相对较弱的地方,如流媒体. 2.TCP既然是面向连接的,那么运行环境必然要求其保证可 ...

iOS 开发中的各种证书

公钥和私钥 转载自:http://www.samirchen.com/ios-certificates/ 先简单的介绍一下公钥和私钥.我们常见的加密算法有两类:对称加密算法(Symmetric Cry ...

Python3 中 random模块

Python中的random模块用于生成随机数. 下面具体介绍random模块的功能: 1.random.random() #用于生成一个0到1的 随机浮点数:0<= n < 1.0 im ...

C&plus;&plus;中&lowbar;T的用途

1    C++语言中“_T”是什么意思? Visual C++里边定义字符串的时候,用_T来保证兼容性,VC支持ascii和unicode两种字符类型,用_T可以保证从ascii编码类型转换到uni ...


版权声明:本文为weixin_39946767原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。