Android美化之全局透明背景

Android美化之全局透明背景


       咱們上次在《Android美化綜述》中向你們簡單的介紹了Android美化的大體脈絡,相信看過的朋友都有必定的瞭解。今天咱們就來看看一個實例——全局透明背景的實現方法。所謂全局背景,就是設置背景和其餘等都是同一張圖片!這個你們應該很清楚,透明就更不用說了。這篇文章就來介紹下Android手機全局透明背景的兩種修改方法。你們要看仔細了,安卓通用!
php

首先你們須要提取原生態沒有任何修改過的framework-res.apk,而後反編譯framework-res.apk。這裏特別交代一下,全局背景化透明化的修改是有兩種修改的方法,你們能夠根據本身的喜愛來選擇修改的方法。web

第一種修改方法:spa

反編譯以後,咱們打開路徑:res/values/styles.xmlorm


<style name="Theme">        咱們先修改這個安卓系統美化的最基礎最大的「Theme」——中文主題,咱們所修改的美化都是「parent」(來源,根源)這個「Theme」裏面的內容。
xml

這裏將教程

<item name="colorBackground">@color/background_dark</item> 修改成 <item name="colorBackground">@color/transparent</item>
圖片

ci

<item name="windowBackground">@drawable/screen_background_dark</item> 修改成 <item name="windowBackground">@drawable/screen_background_dark_transparent</item>
get

it

<item name="windowShowWallpaper">false</item> 修改成 <item name="windowShowWallpaper">true</item>

好了,"Theme"下的內容修改完了。不過這裏須要解釋一點,有的機油說爲何我刷了全局背景與全局透明的美化包以後,個人界面翻動的時候,桌面的壁紙怎麼總是跟着跑呢?還有就是會修改全局背景的機油就問了,咱們以前修改的全局背景只有上面兩段代碼,沒有最後的一段呀,怎麼回事,不會修改以後有什麼「Bug」吧?問得好,最後修改的這段代碼,你看仔細了原生態爲「false」修改以後爲「true」就是這個你們刷過全局背景桌面壁紙爲何會跟着跑的緣由所在,「false」中文意思假的,而「true」中文意思是真的,這就決定了前面的「windowShowWallpaper」中文意思窗口顯示牆紙是否要跟着你的界面來跑的緣由,你們這就知道緣由所在了吧,若是有喜歡界面翻轉的時候桌面跟着翻轉的那你就修改最後這一段,若是不喜歡的化,那你就不用修改最後這一段,就這麼簡單。

代碼

&lt;/style&gt;&lt;style name="Theme.NoTitleBar" parent="@style/Theme"&gt;

&lt;item name="windowNoTitle"&gt;true&lt;/item&gt; 

在下面添加一段代碼

&lt;item name="windowShowWallpaper"&gt;false&lt;/item&gt;

代碼

</style><style name="Theme.Black" parent="@style/Theme">這個主題下最後底下添加<item name="windowShowWallpaper">false</item>這裏說明一下,如下添加的代碼,就不徹底整段代碼寫出來,你們只要看到我寫出來的每個代碼,你把添加的代碼添加到這個整段主題代碼最後就好了。

代碼

</style> <style name="Theme.Black.NoTitleBar.Fullscreen" parent="@style/Theme.Black.NoTitleBar">添加 <item name="windowShowWallpaper">false</item>

代碼

</style> <style name="Theme.Light" parent="@style/Theme> 添加 <item name="windowShowWallpaper">false</item> 

代碼

</styie> <style name="Theme.Translucent" parent="@style/Them> 添加 <item name="windowShowWallpaper">false</item>

代碼

</styie> <style name="Theme.Panel" parent="@style/Theme"> 添加 <item name="windowShowWallpaper">false</item>

好了,這就修改完了,接下來,還要修改一個關鍵地方,這個也是很重要的。

路徑:res/values/drawables.xml

代碼

<item type="drawable" name="screen_background_dark">#ff000000</item> 添加 <item type="drawable" name="screen_background_dark">#00000000</item>

修改這裏後,背景能加自定義的圖片,但是屏幕仍是黑的,修改成透明以後,就OK了,最能體現的就是你在修改撥號面板背景就透明瞭。這裏全局背景化與全局透明的須要修改的XML文件所有修改完畢,接下來須要你本身挑選喜歡的兩張圖片,大小320 480 png(豎屏) 480 320 png(橫屏),都命名爲 「screen_background_dark_transparent.png」 豎屏圖片放進到res/drawable-land-mdpi 之下,橫屏圖片放進到res/drawable-mdpi 之下。

接下來就回編譯吧,回編譯以後,重新生成的apk裏面提取resources.arsc替換到原生態的framework-res.apk裏面,保存,存儲,退出。而後再把那兩張圖片分別在放進到各自的位子裏面就OK了,這下全局背景化透明化修改所有完成。

第二種修改方法:

這裏與上面的不一樣之處就是在「Theme"這個主題下。

將代碼

<item name="colorBackground">@color/background_dark</item> 修改成<item name="colorBackground">@color/transparent</item> 

將代碼

<item name="windowBackground">@drawable/screen_background_dark</item> 添加 <item name="windowBackground">@drawable/window_background_texture</item>

將代碼

<item name="cacheColorHint">?colorBackgroundCacheHint</item> 添加 <item name="cacheColorHint">@color/transparent</item>

修改這裏就是爲了界面翻轉過分的時候是沒有系統緩衝的黑顏色。

而後路徑:res/values/drawables.xml

將代碼

<item type="drawable" name="screen_background_dark">#ff000000</item> 修改成 <item type="drawable" name="screen_background_dark">#00000000</item>

以後只須要挑選本身喜歡的一張 640 480 png 圖片命名爲 window_background_texture.png 放進res/drawable-mdpi 之下,而後就能夠回編譯了。回編譯以後的步驟同上。

這就是全局背景化透明化修改的教程,你學會了嗎?


附:安卓美化綜述:

http://www.morecomtech.com/community/article/jsfa/w2015100008.php

相關文章
相關標籤/搜索