Android获取默认动画制作持续时间比例(开发者的选项)
因此,在我的应用程序中,我真的需要将animator scale设置为1才能正常工作,我已尝试使用此调用获取定义的值,以便可以警告用户:Android获取默认动画制作持续时间比例(开发者的选项),android,android-animation,Android,Android Animation,因此,在我的应用程序中,我真的需要将animator scale设置为1才能正常工作,我已尝试使用此调用获取定义的值,以便可以警告用户: val durationScale = Settings.Global.getFloat(contentResolver, Settings.Global.ANIMATOR_DURATION_SCALE, defaultValue = 1f) 奇怪的是,在我的一台设备(Lenovo Tab M10)上,所有的持续时间刻度都设置为0.5作为原始值(这正是我需要
val durationScale = Settings.Global.getFloat(contentResolver, Settings.Global.ANIMATOR_DURATION_SCALE, defaultValue = 1f)
奇怪的是,在我的一台设备(Lenovo Tab M10)上,所有的持续时间刻度都设置为0.5作为原始值(这正是我需要它工作的原因,有些设备是工厂生产的),然后这个函数没有为ANIMATOR\u duration\u SCALE
返回正确的值。它始终返回发送的默认值,在本例中为1f,即使它设置为0.5f。我注意到:
1-手动将0.5f从开发人员的选项更改为任何其他值(甚至返回到0.5f)后,函数开始返回正确的值
2-TRANSITION\u ANIMATION\u SCALE
和WINDOW\u ANIMATION\u SCALE
也被设置为0.5f作为此设备上的原始值,即使不更改它们,上述函数也会正确返回它们,除了我需要的TRANSITION\u ANIMATION\u SCALE
这可能是一个仅在该设备上发生的问题吗?这很难测试,因为它是我仅有的一台将原始值设置为0.5f的设备,但是我没有得到我应该得到的原始值,这让我非常沮丧。我同意,没有得到正确的值是令人沮丧的。我也有类似的情况。我不知道这是否有帮助,但我可以与它分享我的经验 在某些设备中,animator duration scale设置为1x(1.0f),代码中的默认值设置为0.0f,如下所示
val durationScale = Settings.Global.getFloat(
contentResolver,
Settings.Global.ANIMATOR_DURATION_SCALE,
defaultValue = 0.0f
)
但是每当我检索到这个值时,它总是0.0,即使它应该返回1.0。和您一样,在手动将1x从开发人员的选项更改为任何其他值(甚至返回到1x)后,函数将返回正确的值
而且,这种情况发生在许多设备上,而不仅仅是一台。例如:像素、三星等