android 状态栏背景修改为透明
2012-11-07 09:35
561 查看
Android 2.3
1. 请添加半透明的图片资源,例如:statusbar_background.9.png,到路径
alps\frameworks\base\packages\SystemUI\res\drawable-hdpi 下。
2. 请修改status_bar.xml,将其中的android:background="@drawable/status_bar_background 修改为
android:background="@drawable/statusbar_background。
3. 请修改StatusBarService.java的addStatusBarView()方法,将PixelFormat.RGBX_8888修改为
PixelFormat.TRANSLUCENT。
4. 请在StatusBarService.java的makeStatusBarView(Context context)方法中注册一个
BroadcastReceiver接收自定义的intent,监控是否在Launcher界面。
5. 请在Launche.java添加onWindowFocusChanged (boolean hasWindowFocus)方法,如果此方法已有,请跳过
此步骤。
6. 请修改Launcher.java的onWindowFocusChanged (boolean hasWindowFocus)方法:如果hasWindowFocus为
true且!mAllAppsGrid.isVisible()为true,发送设置状态栏背景为透明的intent,StatusBarService的BroadcastReceiver接
收到这个intent,调用mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景;否则
,发送设置状态栏背景为黑色的intent,StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
7. 请在Launcher.java的showAllApps(boolean animated) 方法中发送设置状态栏背景为黑色的intent,
StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
8. 请在Launcher.java的closeAllApps(boolean animated)方法中发送设置状态栏背景为透明的intent,
StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景。
Android 4.0
1. 请添加半透明的图片资源,例如:statusbar_background.9.png,到路径
alps\frameworks\base\packages\SystemUI\res\drawable-hdpi 下。
2. 如果双卡CU项目请修改zzz_status_bar_gemini_cu.xml,如果是双卡非CU项目请修改
zzz_status_bar_gemini.xml,如果是单卡项目请修改status_bar.xml,将其中的
android:background="@drawable/status_bar_background 修改为
android:background="@drawable/statusbar_background。
3. 请修改StatusBar.java的start()方法,将PixelFormat.RGB_565修改为PixelFormat.TRANSLUCENT。
4. 请在PhoneStatusBar.java的makeStatusBarView(Context context)方法中注册一个BroadcastReceiver接收自定
义的intent,监控是否在Launcher界面。
5. 请在Launcher.java添加onWindowFocusChanged (boolean hasWindowFocus)方法,如果此方法已有,请跳过
此步骤。
6. 请修改Launcher.java的onWindowFocusChanged (boolean hasWindowFocus)方法:如果hasWindowFocus为
true且!isAllAppsCustomizeOpen()为true,发送设置状态栏背景为透明的intent,PhoneStatusBar的BroadcastReceiver
接收到这个intent,调用mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景;否则
,发送设置状态栏背景为黑色的intent,PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
7. 请在Launcher.java的showAllApps(boolean animated) 方法中发送设置状态栏背景为黑色的intent,
PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
8. 请在Launcher.java的showWorkspace(boolean animated)方法中发送设置状态栏背景为透明的intent,
PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景。
1. 请添加半透明的图片资源,例如:statusbar_background.9.png,到路径
alps\frameworks\base\packages\SystemUI\res\drawable-hdpi 下。
2. 请修改status_bar.xml,将其中的android:background="@drawable/status_bar_background 修改为
android:background="@drawable/statusbar_background。
3. 请修改StatusBarService.java的addStatusBarView()方法,将PixelFormat.RGBX_8888修改为
PixelFormat.TRANSLUCENT。
4. 请在StatusBarService.java的makeStatusBarView(Context context)方法中注册一个
BroadcastReceiver接收自定义的intent,监控是否在Launcher界面。
5. 请在Launche.java添加onWindowFocusChanged (boolean hasWindowFocus)方法,如果此方法已有,请跳过
此步骤。
6. 请修改Launcher.java的onWindowFocusChanged (boolean hasWindowFocus)方法:如果hasWindowFocus为
true且!mAllAppsGrid.isVisible()为true,发送设置状态栏背景为透明的intent,StatusBarService的BroadcastReceiver接
收到这个intent,调用mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景;否则
,发送设置状态栏背景为黑色的intent,StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
7. 请在Launcher.java的showAllApps(boolean animated) 方法中发送设置状态栏背景为黑色的intent,
StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
8. 请在Launcher.java的closeAllApps(boolean animated)方法中发送设置状态栏背景为透明的intent,
StatusBarService的BroadcastReceiver接收到这个intent,调用
mStatusBarView.reloadBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景。
Android 4.0
1. 请添加半透明的图片资源,例如:statusbar_background.9.png,到路径
alps\frameworks\base\packages\SystemUI\res\drawable-hdpi 下。
2. 如果双卡CU项目请修改zzz_status_bar_gemini_cu.xml,如果是双卡非CU项目请修改
zzz_status_bar_gemini.xml,如果是单卡项目请修改status_bar.xml,将其中的
android:background="@drawable/status_bar_background 修改为
android:background="@drawable/statusbar_background。
3. 请修改StatusBar.java的start()方法,将PixelFormat.RGB_565修改为PixelFormat.TRANSLUCENT。
4. 请在PhoneStatusBar.java的makeStatusBarView(Context context)方法中注册一个BroadcastReceiver接收自定
义的intent,监控是否在Launcher界面。
5. 请在Launcher.java添加onWindowFocusChanged (boolean hasWindowFocus)方法,如果此方法已有,请跳过
此步骤。
6. 请修改Launcher.java的onWindowFocusChanged (boolean hasWindowFocus)方法:如果hasWindowFocus为
true且!isAllAppsCustomizeOpen()为true,发送设置状态栏背景为透明的intent,PhoneStatusBar的BroadcastReceiver
接收到这个intent,调用mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景;否则
,发送设置状态栏背景为黑色的intent,PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
7. 请在Launcher.java的showAllApps(boolean animated) 方法中发送设置状态栏背景为黑色的intent,
PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为黑色背景。
8. 请在Launcher.java的showWorkspace(boolean animated)方法中发送设置状态栏背景为透明的intent,
PhoneStatusBar的BroadcastReceiver接收到这个intent,调用
mStatusBarView.setBackgroundResource(R.drawable.xxxx)将背景设置为半透明背景。
相关文章推荐
- Android-需求(七):状态栏背景修改为透明
- Android 状态栏背景修改为透明
- [学习记录]android 状态栏背景修改为透明
- android 状态栏背景修改为透明
- Android 沉浸式状态栏-字体颜色与背景颜色修改实现与兼容
- android 沉浸式 状态栏透明 与应用头部背景一样
- Android 沉浸式状态栏以及 透明状态栏 和修改状态栏颜色
- android M N下拉状态栏背景透明 源码
- Android2.2、2.3定制修改状态栏布局、背景、去除状态栏按键、添加状态栏按键
- android4.2.2修改状态栏透明
- Android两行代码修改给系统状态栏设置透明效果
- android沉浸式状态栏、变色状态栏、透明状态栏、修改状态栏颜色及透明
- Android修改Framework-res.apk使状态栏背景颜色为黑色或透明
- android沉浸式状态栏、变色状态栏、透明状态栏、修改状态栏颜色及透明
- android沉浸式状态栏、变色状态栏、透明状态栏、修改状态栏颜色及透明
- Android CollapsingToolbarLayout设置背景图片后如何透明状态栏
- Android修改状态栏的背景颜色
- android 隐藏状态栏和修改状态栏的背景颜色(沉浸式状态栏)
- Android 状态栏背景模糊透明效果实现
- Android2.2、2.3定制修改状态栏布局、背景、去除状态栏按键、添加状态栏按键