Android设置Activity背景为透明style

方法一:

通过Theme.Translucent

@android:style/Theme.Translucent
            @android:style/Theme.Translucent.NoTitleBar
            @android:style/Theme.Translucent.NoTitleBar.Fullscreen

只需要在Manifest中需要透明的Activity内设置theme为以上任意一个就可以了

<activity
  android:name="com.vixtel.simulate.MainApp"
  android:configChanges="keyboardHidden|orientation"
  android:label="@string/app_name"
  android:screenOrientation="portrait"
  android:theme="@android:style/Theme.Translucent.NoTitleBar" >
  <intent-filter>
      <action android:name="android.intent.action.MAIN" />

      <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
        </activity>

方法二:

自定义style,就像自定义Dialog的style一样,在res-values-color.xml中添加透明颜色值:

<?xml version="1.0" encoding="UTF-8"?>
<resources>

    <color name="transparent">#0000</color>

</resources>

在res-values-styles.xml中添加如下:

<style name="myTransparent">
        <item name="android:windowBackground">@color/transparent</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
    </style>

在Manifest中中需要透明的Activity内设置theme为我们自定义的即可

android:theme="@style/myTransparent"

运行程序后,就全透明了,看得见背景下的所有东西可以却都操作无效。

原文地址:https://www.cnblogs.com/Free-Thinker/p/4424905.html