android statusbar 的修改

原创 2012年03月23日 17:41:45

由于完全改了status bar,建议先做几张png图片,加到

Frameworks/base/core/res/res/drawable
下。最好做一张背景图,替换 statusbar_background.png

另外我又加了几张icon,分别是home menu和back的正常和按下状态。

这些图片为:
frameworks\base\core\res\res\drawable\ic_menu_back_pressed.png
frameworks\base\core\res\res\drawable\ic_menu_home_pressed.png
frameworks\base\core\res\res\drawable\ic_menu_more_pressed.png
frameworks\base\core\res\res\drawable\ic_volume_down_pressed.png
frameworks\base\core\res\res\drawable\ic_volume_up_pressed.png
frameworks\base\core\res\res\drawable\ic_menu_back.png
frameworks\base\core\res\res\drawable\ic_menu_home.png
frameworks\base\core\res\res\drawable\ic_menu_more.png
frameworks\base\core\res\res\drawable\ic_volume_down.png
frameworks\base\core\res\res\drawable\ic_volume_up.png

修改步骤为:

一.修改xml界面
1.创建按钮
frameworks\base\core\res\res\drawable\btn_sbicon_back.xml
frameworks\base\core\res\res\drawable\btn_sbicon_home.xml
frameworks\base\core\res\res\drawable\btn_sbicon_menu.xml
frameworks\base\core\res\res\drawable\btn_sbicon_vol_down.xml
frameworks\base\core\res\res\drawable\btn_sbicon_vol_up.xml
基结构如下:
<?xml version="1.0"encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:state_pressed="true"android:drawable="@drawable/ic_menu_back_pressed"/>
   <item android:state_pressed="false"android:drawable="@drawable/ic_menu_back" />
</selector>

2. 增加图标
更改整个status bar,我的方法是:
修改status bar的layerout文件:
Frameworks/base/core/res/res/layout/status_bar.xml
在原来的linearlayout中新增 image view

<?xml version="1.0"encoding="utf-8"?>
<com.android.server.status.StatusBarViewxmlns:android="http://schemas.android.com/apk/res/android"
   android:background="@drawable/statusbar_background"
   android:orientation="vertical"
   android:focusable="true"
   android:descendantFocusability="afterDescendants"
   >
   <LinearLayout android:id="@+id/keys"
       android:layout_width="wrap_content"
       android:layout_height="fill_parent"
       android:orientation="horizontal">
    <ImageView android:id="@+id/status_home"
     android:layout_width="40dip"
     android:layout_height="40dip"
     android:clickable="true"
     android:layout_gravity="top"
     android:paddingTop="1dip"
     android:paddingRight="1dip"
     android:paddingLeft="1dip"
     android:src="@drawable/btn_sbicon_home" />
    <ImageView android:id="@+id/status_back"
     android:layout_width="40dip"
     android:layout_height="40dip"
     android:clickable="true"
     android:layout_gravity="top"
     android:paddingTop="1dip"
     android:paddingRight="1dip"
     android:paddingLeft="1dip"
     android:src="@drawable/btn_sbicon_back" />
    <ImageView android:id="@+id/status_menu"
     android:layout_width="40dip"
     android:layout_height="40dip"
     android:clickable="true"
     android:layout_gravity="top"
     android:paddingTop="1dip"
     android:paddingRight="1dip"
     android:paddingLeft="1dip"
     android:src="@drawable/btn_sbicon_menu" />
    <ImageView android:id="@+id/status_vol_down"
     android:layout_width="40dip"
     android:layout_height="40dip"
     android:clickable="true"
     android:layout_gravity="top"
     android:paddingTop="1dip"
     android:paddingRight="1dip"
     android:paddingLeft="1dip"
     android:src="@drawable/btn_sbicon_vol_down" />
    <ImageView android:id="@+id/status_vol_up"
     android:layout_width="40dip"
     android:layout_height="40dip"
     android:clickable="true"
     android:layout_gravity="top"
     android:paddingTop="1dip"
     android:paddingRight="1dip"
    

Android改变状态栏statusbar背景色

Android改变状态栏statusbar背景色Android开发中在某些界面为了保证显示一致性,可能需要调整statusBar的背景色,本文介绍了Android 4.4(API 19)和Androi...
  • gaoyan10
  • gaoyan10
  • 2015年05月15日 16:56
  • 1729

【Android】关于statusbar的处理

转自:http://blog.csdn.net/jdsjlzx/article/details/41643587 Android 沉浸式状态栏、状态栏一体化、透明状态栏、仿i...
  • NeoAdrian
  • NeoAdrian
  • 2016年05月18日 19:21
  • 1783

修改状态栏(StatusBar)图标(icon)(定制自己的状态栏)

系统定制需要修改一下状态栏,如果想要刷机的话,网上资料挺多的,但是修改源代码的资料不多,在2.2中,源代码在frameworks/base/services/java/com/android/serv...
  • sdvch
  • sdvch
  • 2015年03月10日 18:03
  • 1656

SystemUI statusbar 更换自己的UI图标

Android5 SystemUI 源码自解由于公司任务修改Android下拉状态栏图标UI,之前没有接触过Android开发,所以修改时废了好长时间。现在将自己的见解总结一下,为了方便自己下次查询。...
  • u014199198
  • u014199198
  • 2016年04月22日 21:57
  • 1099

Android状态栏(一):StatusBar的浮动显示与隐藏

有时候当我们设置Activity全屏后,希望点击屏幕时状态栏浮动显示在界面上,而不是将界面挤下去。可以用如下方法实现: public class MainActivity extends Activi...
  • codingbuddy
  • codingbuddy
  • 2014年03月15日 00:11
  • 2001

android沉浸式状态栏StatusBar在不同Window下的实现

android沉浸式状态栏StatusBar在不同Window下的实现StatusBar沉浸式的2种实现方式对于沉浸式状态栏的实现,我觉得有两种实现方式。一是:将状态栏的颜色和状态栏下面的View颜色...
  • qq_33689414
  • qq_33689414
  • 2017年06月16日 13:39
  • 1291

在Activity中或Fragment中任意改变状态栏的颜色

在公司要求弄出高大上的沉浸式模式时,查阅了好多资料,感觉都不怎么符合我的要求,只有一些比较重点的功能可以进行采集。以下直接进入正题。        这里有3种机型的运行图,模拟机上的5.0-6.0的话...
  • u013334392
  • u013334392
  • 2017年01月20日 10:34
  • 3405

Android 设置系统SystemUI 顶部StatusBar状态栏透明一体化

有两个文件 gemini_status_bar.xml(修改这个背景生效) status_bar.xml   系统默认黑色状态:android:background="@drawable/system...
  • Mr_kings
  • Mr_kings
  • 2016年04月13日 16:06
  • 3385

[ Android SystemUi ] 动态修改系统状态栏颜色【沉浸式状态栏】

平台: Android MTK 4.4       个人很少,很好写博客,做Android开发几年来,在CSDN上一直保持索取的’姿态’, 各种百度 各种Google,突然,觉得自己是不是该付出一...
  • MLQ8087
  • MLQ8087
  • 2016年03月28日 18:41
  • 2980

Android statusbar 透明后 toolbar与之重叠问题的解决方法

之前想要给statusbar和toolbar实现这样的效果: 为使得statusbar变为透明,在自定义theme中给statusbar添加了以下属性: true可是在st...
  • Zafir6453
  • Zafir6453
  • 2016年05月08日 10:14
  • 3095
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android statusbar 的修改
举报原因:
原因补充:

(最多只允许输入30个字)