gpt4 book ai didi

android - 有没有办法覆盖Android中 View 的动画辅助功能设置

转载 作者:行者123 更新时间:2023-12-04 17:36:18 26 4
gpt4 key购买 nike

出于验证原因,我的应用程序中有一个 View 需要动画。

在正常情况下,动画效果很好。除非用户的设备从辅助功能选项或开发人员设置(窗口动画比例、过渡动画比例、Animator 持续时间比例)禁用了动画。

有没有办法在设备禁用动画的情况下为 View 显示动画?

谢谢

这是动画代码:

private ObjectAnimator translateAnimator;
private View animatedView;
...
private void startAnimation() {
if (translateAnimator == null) {
translateAnimator = ObjectAnimator.ofFloat(animatedView, "translationX", 0f, 300f);
translateAnimator.setAutoCancel(true);
translateAnimator.setDuration(2000);
translateAnimator.setInterpolator(new AccelerateDecelerateInterpolator());
translateAnimator.setRepeatCount(ValueAnimator.INFINITE);
translateAnimator.setRepeatMode(ValueAnimator.REVERSE);

translateAnimator.start();
} else {
translateAnimator.resume();
}
}

最佳答案

我仍然不知道如何覆盖用户的动画设置,但至少我找到了一种方法来检查动画是否被用户禁用并警告他们我的应用程序不会按预期工作。

        try {
val anim = Settings.Global.getFloat(root.contentResolver, Settings.Global.ANIMATOR_DURATION_SCALE, 1.0f)
Log.d(TAG, "ANIM = $anim")

if (-Float.MIN_VALUE <= anim && anim <= Float.MIN_VALUE) {
// Below is my proprietary showAlret function. You'll need to use yours
App.app?.showAlert("Enable Animation", R.string.enableAnimation, root, true)
}

}
catch (e: Exception) {
Log.d(TAG, "ANIM: ${e.message}")
}

总的来说,这只是 Android 的另一个缺点,表明工程师在实现新功能时不会考虑太多:一方面他们提供开发人员依赖的 API,另一方面他们允许用户完全禁用它API 甚至没有警告用户某些应用程序在此之后可能无法正常运行。

关于android - 有没有办法覆盖Android中 View 的动画辅助功能设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56547756/

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