gpt4 book ai didi

android - 禁用窗口和过渡设置

转载 作者:行者123 更新时间:2023-11-29 22:05:00 27 4
gpt4 key购买 nike

所以我需要做的是在代码中打开和关闭窗口和/或过渡动画,以获得与设置 > 显示 > 动画 > 禁用所有动画相同的效果。

我熟悉的更改设备设置的方法是在 Settings.System.putInt() 方法中使用 ContentResolver,如下所示:

ContentResolver cr = getContentResolver();
Settings.System.putInt(cr, Settings.System.WINDOW_ANIMATION_SCALE, 0);

如文档中所述,对于这两个设置“设置为 0 将禁用所有......动画”。在使用 putInt() 方法之前和之后读取设置时,使用:

Settings.System.getString(cr, Settings.System.WINDOW_ANIMATION_SCALE);

我可以看到设置正在更改。然而,当随后执行一些操作以启动窗口或过渡动画时,很明显可以看到设置没有任何区别并且过渡仍然发生。

我还想说的是,当我在“设置”屏幕中更改设置时,我可以在重新运行我的应用程序时看到设置已更改。所以看起来这是正确的设置,我的应用程序没有正确更改它。

还有什么我想念的吗?

提前致谢。

最佳答案

检查您是否设置了正确的比例。

Settings.System.TRANSITION_ANIMATION_SCALE 

将更改 Activity 转换。

作为:

Settings.System.WINDOW_ANIMATION_SCALE

将影响窗口动画,例如对话框打开。

(添加了 API16)这将启用/禁用查看特定动画。

Settings.System.ANIMATOR_DURATION_SCALE

此外,我很确定这些是 float ,因为它们可以是 0.5x 动画设置,这意味着速度减半。我以前从未在应用程序中尝试过这些。

但我想到了两件事:

  • ContentProvider是异步的,需要监听Setting才能完成设置
  • 此外,在您创建/完成和 Activity 之前,这些可能不会起作用。这意味着在 Activity 中更改它们可能不会影响当前的 Activity,但我将不得不测试该理论。

关于android - 禁用窗口和过渡设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10936946/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com