一、目标:Android5.0以上

二、步骤
1、在res-values-colors.xml下新建一个RGB颜色
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
<color name="theRed">#ff6a69</color>
</resources>
2、新建一个布局,名为actionbarlayout.xml,在后边重写布局时用于添加
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/actionBarId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
3、重写LineaLayout布局,放置步骤二新建的布局在顶部,用作背景颜色的容器
public class ActionBarLayOut extends LinearLayout {
public ActionBarLayOut(Context context, AttributeSet attrs){
super(context,attrs);
LayoutInflater.from(context).inflate(R.layout.actionbarlayout,this);
}
}
3、在主布局里调用这个重写后的线性布局
<?xml version="1.0" encoding="utf-8"?>
<com.example.test.ActionBarLayOut xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.test.MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/theRed"
android:text="Hello World!" />
</com.example.test.ActionBarLayOut>
4、在main活动中进行相应设置
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView = (TextView)findViewById(R.id.actionBarId);
int color = getResources().getColor(R.color.theRed);
setActionBarColor(textView,color);
}
protected void setActionBarColor(TextView textView, int ActionBarColor){
//----------------------------------隐藏标题栏----------------------------------------------
if (getSupportActionBar()!=null) {
getSupportActionBar().hide();
}
//------------------------------------------------------------------------------------------
//----------------------------------将状态栏设置为透明--------------------------------------
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
window.setNavigationBarColor(Color.TRANSPARENT);
}
//------------------------------------------------------------------------------------------
/**
* 首先获取状态栏的高度statusBarHeight1,然后在状态栏的位置放一个空的TextView,
* 高度设置为statusBarHeight1,然后将TextView的背景颜色进行设置,这样就可以变相
* 的给状态栏设置颜色
*/
int statusBarHeight1 = -1;
//获取status_bar_height资源的ID
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
//根据资源ID获取响应的尺寸值
statusBarHeight1 = getResources().getDimensionPixelSize(resourceId);
}
textView.setHeight(statusBarHeight1);
textView.setBackgroundColor(ActionBarColor);
}
}
以上所述是小编给大家介绍的Android 自定义状态栏实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# android
# 自定义状态栏
# Android动态控制状态栏显示和隐藏
# Android设置透明状态栏和透明导航栏
# Android 状态栏虚拟导航键透明效果的实现方法
# Android透明化和沉浸式状态栏实践及源码分析
# Android实现个人资料页面头像背景模糊显示包(状态栏)
# Android沉浸式状态栏实现示例
# Android中隐藏状态栏和标题栏的方法汇总(隐藏状态栏、标题栏的五种方法)
# Android之沉浸式状态栏的实现方法、状态栏透明
# Android 动态显示和隐藏状态栏详解及实例
# 状态栏
# 重写
# 设置为
# 小编
# 新建一个
# 在此
# 给大家
# 自定义
# 所述
# 给我留言
# 时用
# 感谢大家
# 就可以
# 标题栏
# 疑问请
# 有任何
# 活动中
# apk
# schemas
# orientation
相关文章:
如何通过VPS建站实现广告与增值服务盈利?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
装修招标网站设计制作流程,装修招标流程?
如何快速搭建个人网站并优化SEO?
javascript基本数据类型及类型检测常用方法小结
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
制作企业网站建设方案,怎样建设一个公司网站?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
大学网站设计制作软件有哪些,如何将网站制作成自己app?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
如何用虚拟主机快速搭建网站?详细步骤解析
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
如何在IIS中新建站点并配置端口与IP地址?
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
建站之星下载版如何获取与安装?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何在万网ECS上快速搭建专属网站?
寿县云建站:智能SEO优化与多行业模板快速上线指南
网站好制作吗知乎,网站开发好学吗?有什么技巧?
如何在Golang中指定模块版本_使用go.mod控制版本号
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
建站之星与建站宝盒如何选择最佳方案?
魔毅自助建站系统:模板定制与SEO优化一键生成指南
长沙做网站要多少钱,长沙国安网络怎么样?
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
微信推文制作网站有哪些,怎么做微信推文,急?
定制建站价位费用解析与套餐推荐全攻略
再谈Python中的字符串与字符编码(推荐)
网站专业制作公司有哪些,做一个公司网站要多少钱?
*服务器网站为何频现安全漏洞?
建站主机如何选?性能与价格怎样平衡?
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在阿里云香港服务器快速搭建网站?
免费网站制作appp,免费制作app哪个平台好?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
建站主机与服务器功能差异如何区分?
大型企业网站制作流程,做网站需要注册公司吗?
做企业网站制作流程,企业网站制作基本流程有哪些?
建站之星代理商如何保障技术支持与售后服务?
清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?
,石家庄四十八中学官网?
宝塔建站后网页无法访问如何解决?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
如何快速搭建二级域名独立网站?
如何在Windows虚拟主机上快速搭建网站?
如何在Golang中使用replace替换模块_指定本地或远程路径
*请认真填写需求信息,我们会在24小时内与您取得联系。