Android 設置Activity透明


  一直在應用程序中使用的Activity都是黑色不透明的背景,很少遇到那些花哨的Activity,但是花哨歸花哨,有些Activity一定要實現半透或者全透效果,比如我的一張動態壁紙的設置界面,這張設置界面是一張Activity頁面,我在設置界面進行壁紙設置的時候,我希望看到我的壁紙已經作出相應的改變,為此就需要實現Activity的半透或者全透的效果了,那么如何在Android中實現Activity半透明效果或者全透明效果?

Activity實現全透明效果

        Activity實現全透明效果方法,我們可以從sdk的幫助文章中找到方法,系統已經給我們做好了全透效果的style,所以我們只需在AndroidManifest.xml中聲明該Activity時,添加上紅色代碼設置即可:

XML/HTML代碼
<activity android:name="org.ourunix.android.FreneticActivity"
	android:icon="@drawable/small_pic.png"
	android:label="@string/freneticLabel"
	android:style="@android:style/Theme.Translucent" >
</activity>

Activity實現半透明效果

        如果我們要實現半透效果又該怎么辦呢?那就需要我們自己寫style了,但是這個style很簡單,我們只需繼承上面全透的系統style,然后加上背景色即可,步驟如下。

  1、先在res/values下建colors.xml文件,寫入:

XML/HTML代碼
<?xml version = "1.0" encoding = "UTF-8" ?>
<resources>
        <color name = "transparent">#50000000</color>
</resources>

  注意:color.xml的#5000000前兩位是透明的效果參數從00--99(透明--不怎么透明),后6位是顏色的設置

        2、這個值設定了整個界面的透明度,為了看得見效果,現在設為透明度為56%(9/16)左右。再在res/values/下建styles.xml,設置程序的style:

XML/HTML代碼
<?xml version="1.0" encoding="utf-8"?>
<resources>
        <style name="Transparent">
                <item name="android:windowBackground">@color/transparent</item>
                <item name="android:windowIsTranslucent">true</item>
                <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
        </style>
</resources>

  

        3、最后一步,把這個styles.xml用在相應的Activity上。即在AndroidManifest.xml中的任意<activity>標簽中添加,同上。

XML/HTML代碼
<activity android:name="org.ourunix.android.FreneticActivity"
	android:icon="@drawable/small_pic.png"
	android:label="@string/freneticLabel"
	android:theme="@style/Transparent>
</activity>

  

        附加:如果想設置所有的activity都使用這個風格,可以把這句標簽語句添加在<application>中,最后運行程序,是不是發現整個界面都被蒙上一層半透明了。最后可以把背景色#9000換成#0000,運行程序后,就全透明了,看得見背景下的所有東西可以卻都操作無效。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM