首先找到android/frameworks/base/policy/src/com/android/internal/policy/impl中的PhoneWindowManager.java类
然后找到 public int getSystemDecorRectLw(Rect systemRect) 的方法
原来的方法内容是:
public int getSystemDecorRectLw(Rect systemRect) {
systemRect.left = mSystemLeft;
systemRect.top = mSystemTop;
systemRect.right = mSystemRight;
systemRect.bottom = mSystemBottom;
if (mStatusBar != null) return mStatusBar.getSurfaceLayer();
if (mNavigationBar != null) return mNavigationBar.getSurfaceLayer();
return 0;
}
在这里修改该方法为
public int getSystemDecorRectLw(Rect systemRect) {
systemRect.left = mSystemLeft;
systemRect.top = mSystemTop;
systemRect.right = mSystemRight;
systemRect.bottom = mSystemBottom;
if (mStatusBar != null) return 0;
if (mNavigationBar != null) return 0;
return 0;
}
这里修改完毕以后,
进入android/frameworks/base/packages/SystemUI/res/layout目录下
找到navigation_bar.xml和status_bar.xml文件
然后把这个两个布局文件的background属性都修改为#00000000,
到此状态栏修改透明的步骤结束了,重新编译frameworks或者编译整个代码,烧如手机或平板,自己看吧,透明状态栏出现了,有不同的朋友可以随时与我沟通。
http://blog.youkuaiyun.com/buhaixiang0923/article/details/9187861