0

我有一个设置为显示设备壁纸的活动,即:在AndroidManifest.xml中:

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

在活动中OnCreate

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER)

当我打电话

moveTaskToBack(true);

活动按预期消失,到目前为止一切顺利。
但是,当在 Jelly Bean 上运行它时,例如运行 4.1.1 的 Galaxy S3,在 moveTaskToBack 之后的转换过程中会出现非常明显的黑色闪烁。仅当 Home 活动位于我的活动下方时才会发生闪烁。

正如我所描述的那样,通过一个简单的活动设置,这个问题是完全可重现的。

如果我改用,则不会发生闪烁finish(),但不能选择使用完成。它也不会发生在运行 ICS 的 S3 上。

我怀疑这可能与壁纸的一些刷新有关,或者可能与 Project Butter 的变化有关,但我没有想法。

如何在仍然能够看到设备壁纸的同时消除这种闪烁,并且在我将其移出视野时不会破坏活动?

4

1 回答 1

0

我刚刚遇到了一个与 moveTaskToBack(true) 相关的类似问题。这个 API 的行为在 JellyBean 和 ICS 上明显不同,但是我找不到任何有帮助的文档。

于 2013-01-17T17:19:37.403 回答