在Android上,如何使用以前的活动';s屏幕作为我的新活动';没有半透明背景的s背景变成黑色?

在Android上,如何使用以前的活动';s屏幕作为我的新活动';没有半透明背景的s背景变成黑色?,android,android-activity,background,Android,Android Activity,Background,目前我使用的是半透明背景,允许新活动使用前一个活动的屏幕作为背景。但是,如果我按home然后返回活动,半透明背景将变为黑色。有没有办法避免背景变黑?您可以使用主题使任何活动半透明 <activity android:name=".MyActivity" android:theme="@android:style/Theme.Translucent" ..> .. </activity> .. 这将使活动的背景在返回时也是半透明的。但显然,您无法控制其背后活动

目前我使用的是半透明背景,允许新活动使用前一个活动的屏幕作为背景。但是,如果我按home然后返回活动,半透明背景将变为黑色。有没有办法避免背景变黑?

您可以使用主题使任何活动半透明

<activity android:name=".MyActivity" android:theme="@android:style/Theme.Translucent" ..>
    ..
</activity>

..
这将使活动的背景在返回时也是半透明的。但显然,您无法控制其背后活动的背景。

使用

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

在清单文件中的活动标记中。

有一个默认背景,不会是黑色的,以便在程序直接启动时使用,而不是从其他活动启动时使用?我认为这是不可能的,我也在搜索它是的,我同意CapDroid。我认为这是不可能的,因为半透明活动从未拥有背景,所以在切换到launcher活动并返回后,先前的背景丢失了。此外,出于安全原因,android不允许我们获取屏幕截图。我只是希望有一种方法可以在当前屏幕作为背景的情况下启动触觉,但我想我们只能使用半透明,这是有限制的。@EddieH我建议你发布你正在使用的代码,因为你要做的是处理下面的答案。也就是说,没有带回家的黑屏。什么是API级别?@rochdev谢谢,我相信你,我会调查不同的API级别以及我所做的不同。我使用的是安卓1.6<代码>-抱歉,但我认为您错过了真正的问题:“但是,如果我按home键然后返回活动,半透明背景会变黑。有没有办法避免背景变黑?”我想澄清一下,这是我的情况:如果我从活动1转到活动2(活动2是半透明的,使用活动1作为背景),然后从活动2按home,然后返回到应用程序,即活动2,但它不再使用活动1作为背景,而是有一个黑色背景。当您说“也当您返回时”,这是否意味着在我的情况下它不应该是黑色的?我刚刚在三台设备上测试了这个,1.6-2.2,使用你上面发布的活动布局。从A->B->C,其中C是半透明的,有B的背景。单击Home。保持原位,返回C,仍然有B的背景。啊,我明白了,我将B更改为常规活动,实际上C不是w即使在回家后也会显示半透明的背景。问题是我使用的是B的游戏引擎AndEngine,它通过代码管理自己的背景。我将在AndEngine板上进一步了解这一点,但非常感谢您的帮助!