2026年10月31日 · 今日 0 帖 · 会员 6.1万 · 主题 17.4万
登录 · 注册 · 游客,欢迎随便逛逛
返回版块
只看作者:洞房 查看全部
1000
Lv9有为九子能等级图标
勋章勋章勋章勋章勋章
帖子
9.3万
回复
2,089
积分
60.3万
注册
2006-12-06
[安卓交流]

安卓-全局透明背景

[复制链接]
查看 1,842 回复 0
楼主 发表于 | 查看全部
11 人收藏

全局透明美化教程,CM和官方Rom均 适用,需要有一点反编译的基础。 很多 Rom作者都会做全局透明,我的方法可 能和他们的不一样,但效果应该是一致 的。

整个过程只需反编译framework-res.apk文件。

一.修改res/values/ 下的 colors.xml ,在 里面的颜色代码中间添加一行代 码: <color name=“background_all“>#be000000</color> 我这里是定义一个全局背景色,具有一 定的透明度,而不是100%透明,后面 要用到这个颜色。 #be000000 是颜色代码,#后面有8位, 前两位表示透明度,后面6位为颜色。

二.修改res/values/ 下的 styles.xml,这 是各种*风格的定义文件. 本帖隐藏的内容 1.找到主风格 <style name=“Theme“> 在它的定义代码段内找到 windowBackground 的那行,将其值改 为 @color*ground_all 在它的定义代码段内找到 windowShowWallpaper 的那行,将其值 改为 true

2.找到子风格 <style name=“Theme.Black“ parent=“@style/Theme“> 在它的定义代码段内找到 colorBackground 的那行,将其值改为 @color*ground_all 在它的定义代码段内找到 windowBackground 的那行,将其值改 为 @color*ground_all 添加一行 <item name=“windowShowWallpaper“>false</item>

3. 找到子风格 <style name=“Theme.Dialog“ parent=“@style/Theme“> 添加一行 <item name=“windowShowWallpaper“>false</item>

4.找到子风格 <style name=“Theme.Light“ parent=“@style/Theme“> 添加一行 <item name=“windowShowWallpaper“>false</item>

5.找到子风格<style name=“Theme.Translucent“ parent=“@style/Theme“> 添加一行 <item name=“windowShowWallpaper“>true</item>

6.找到子风格<style name=“Widget.ListView“ parent=“@style/Widget.AbsListView“>和 <style name=“Widget.ListView.White“ parent=“@style/Widget.AbsListView“> 在它的定义代码段内分别找到 cacheColorHint 的那行,将其值改为 @color/transparent

7.找到子风格<style name=“Theme.No*“ parent=“@style/Theme“> 添加一行 <item name=“windowShowWallpaper“>false</item>

8. 找到子风格 <style name=“Theme.Panel“ parent=“@style/Theme“> 添加一行 <item name=“windowShowWallpaper“>false</item>

9.找到子风格<style name=“Theme.WallpaperSettings“ parent=“@style/Theme“> 在它的定义代码段内找到 windowBackground 的那行,将其值改 为 @color*ground_all

注:大家可以看到<item name=“windowShowWallpaper“>false</item>这行代码比较关键 请注意 5 中,后面的值不是 false,而是 true 本人水平有限,欢迎大家多多指 正。

原则上,到这里。全局透明已经完成 了,接下来直接回编译即可。

给个精。

登录回复

登录后可以回复这个帖子。旧账号可使用原密码登录。

登录 注册新号
← 返回版块