Android 活动缩放动画显示黑色背景

Android 活动缩放动画显示黑色背景,android,animation,background,Android,Animation,Background,我正在使用此动画: <?xml version="1.0" encoding="utf-8"?> <scale xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:fillAfter="false" android:fromXScale="1.0" android:fromYScale="1.0" and

我正在使用此动画:

    <?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="500"
    android:fillAfter="false"
    android:fromXScale="1.0"
    android:fromYScale="1.0"
    android:interpolator="@android:anim/linear_interpolator"
    android:pivotX="50%"
    android:pivotY="50%"
    android:startOffset="0"
    android:toXScale="0.9"
    android:toYScale="0.95" />
当活动缩放到0.95时,活动后面会出现黑色背景

解决方案1失败:将应用程序的windowBackground设置为其他颜色。 解决方案2失败:在活动中使用此代码:

getWindow().setBackgroundDrawableResource(R.drawable.texture_background);

将以下代码添加到
setContentView()之后的
onCreate()
方法中

更新

指示显示器具有安全视频输出并支持合成安全曲面

如果设置了该标志,则显示设备具有安全视频输出,并且能够显示安全表面。它还可以显示受保护的缓冲区

如果未设置该标志,则显示设备可能没有安全视频输出;用户可能会在屏幕上看到空白区域,而不是安全表面或受保护缓冲区的内容

安全曲面用于防止应用程序渲染到这些曲面中的内容出现在屏幕截图中或在非安全显示器上查看。安全视频解码器出于类似目的使用受保护的缓冲区

应用程序通过指定标志\安全窗口标志来创建具有安全表面的窗口。同样,应用程序在将安全视图附加到其包含窗口之前,通过调用setSecure(布尔值)创建具有安全曲面的SurfaceView


应用程序可以使用缺少此标志作为提示,表示不应在此显示器上创建安全表面或受保护的缓冲区,因为内容可能不可见。例如,如果未设置标志,则应用程序可能会选择不在此显示器上显示内容、显示信息性错误消息、选择替代内容流或采用不同的策略解码不依赖于安全表面或受保护缓冲区的内容。

它只工作一次!?然后,它再也不会重复一次,回到黑色。更新:嗯,正如我提到的,它只发生过一次。另外,我不想阻止用户截图。请尝试在
onResume
方法中删除标志。不要使用
setFlags
删除标志。使用
clearFlags
getWindow().clearFlags(WindowManager.LayoutParams.FLAG\u SECURE)
仍然不工作。但是,“有时”当我返回此活动时,此背景会出现,直到重新加载该活动。
getWindow().setBackgroundDrawableResource(R.drawable.texture_background);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE,WindowManager.LayoutParams.FLAG_SECURE);