Activity设置背景透明之开发坑

时间:2023-01-25 03:58:24

Activity设置背景透明的常规方法

方法一、在Manifest.xml中,直接在需要设置的Activity中添加主题样式:

Android:theme="@android:style/Theme.Translucent"

此外,可以在Activity布局文件中增加如下代码控制透明度

android:background="#01000000"  

方法二、

  1、在自己项目的style文件下

  <style name="translucent"> 
    <item name="android:windowBackground">@color/translucent</item>
     <item name="android:windowIsTranslucent">true</item>
   </style>

  2、在自己项目的color文件中(android:windowBackground的颜色必须写在color中)

  <color name="translucent">#01000000</color>

  3、在Manifest中的Activity下

        android:exported="true"
android:theme
="@style/ActivityTranslucent"

以上便是常规的设置,但是我们开发中不可避免的会引入v4下的某些东西,比如Fragment,这个时候,方法一不在适用,方法二,需要增加点东西

只需要在方法二的第一步中,使style集成Theme.AppCompat下的主题即可。如:

  <style name="translucent" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowBackground">@color/translucent</item>
<item name="android:windowIsTranslucent">true</item>
</style>