更新:按照
http://bbs.lidroid.com/t-23305-1-1.html
http://bbs.hiapk.com/viewthread.php?tid=1318209
的方法直接修改成功,无副作用,不用理会下面的教程了……
自从去年买了HTC Desire,便刷机不止,刷过N个ROM后最终留在了CM系列,除开高可定制度外,还因为一些CM特有功能确实很实用,带来了不少方便。
就是黑色的状态栏怎么看都不顺眼,平白无故占用了顶上的一段空间,本来不大的屏幕像缩水了一样,比例都怪怪的,就想方设法让状态栏变透明。到现在系统升级了三次,每一次透明状态栏的实现方法都不太一样……
[caption id="attachment_639406" align="alignleft" width="248" caption="状态栏透明前"]
[/caption]
[caption id="attachment_639408" align="alignleft" width="248" caption="状态栏透明后"]
[/caption]
Android系统的UI基本由system\framework\framework-res.apk实现,貌似从2.3开始又多了个system\app\SystemUI.apk。这两个文件都可以复制出来改后缀为.zip,跟普通压缩包一样修改。
两个文件的图标都放在各自的res\drawable-hdpi(或类似)目录里,通过修改替换,可以把系统随意改造成你需要的样子,状态栏背景当然也包括在内。
重要提示:在修改刷机前,务必先将system\framework\framework-res.apk,system\app\SystemUI.apk 这两个文件拷出来备份,万一出了问题可以刷回去。不嫌麻烦的话Recovery备份更好。
我最开始用的2.2系统 CM6还算方便,只需把framework-res.apk\res\drawable-hdpi里的两个文件(大致是):
statusbar_background_sq.9.png(状态栏背景)
title_bar_shadow.9.png(状态栏分割线)
改成透明的就行。
注:需要修改的文件名可能略有差别,可以用background、shadow作关键字搜一下,下同。
随着CM7的到来,这个方法失效了(用的
这个ROM)。即便将SystemUI.apk一起改也还是不行,估计是别的设置文件在起作用,又不想搞JDK之类的深入研究。于是问Google,在CM官方论坛搜到这么一篇帖子:
og's clear statusbar for cm7 alpha3 & nightlty ***now with ext4 hack***,里面对应不同ROM版本分了三个包,选择下载,不清楚的话就一个个试吧。包里带了一些其他的内容,只需留
system\framework\framework-res.apk(不知是不是必须,反正我是一起改)
system\app\SystemUI.apk
这两个就行了,其他的可以删掉。UI图标跟你现在用的可能不配套,可以用自己系统里这两个文件中的图标替换,要保证
statusbar_background.9.png
title_bar_shadow.9.png
这个两个文件是透明的。
大致过程是:打开下载的压缩包(不解压),将包里的framework-res.apk、SystemUI.apk拷出来,改后缀为.zip,打开(不解压),替换修改好图标,后缀改回.apk,重新拷回下载的压缩包,再进入Recovery刷这个包。
注意:达到透明效果还需要在ADW设置里将“壁纸优化”旁边的钩去掉或者使用动态桌面,要不然状态栏依然会是黑背景。
最近又升级了
CM7 RC4,用之前的办法又不行了,无语啊。还是问Google,试了好几个都失败之后,在XDA找到个成功的方案:
CM7 Status Bar Transparency。修改刷机及使用方法跟上面的完全一样。
最后要说明的是,用这种方法修改后,状态栏中的GPS图标就变得不正确(如图红圈中本应是GPS图标),但是文件名什么的完全无问题,百思不得其解,不过需要用GPS的场合大都时间不长,无视好了。