Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android动画慢内对话框_Android_Kotlin_Android Animation - Fatal编程技术网

Android动画慢内对话框

Android动画慢内对话框,android,kotlin,android-animation,Android,Kotlin,Android Animation,我做了几次测试(点击/手动测试),测试了AnimatorSetplayther,或者ObjectAnimator在对话框(DialogFragment/AlertDialog)中的性能,并将速度与活动或片段中的裸充气布局中的AnimatorSet进行了比较。我在dialog(无论是DialogFragment还是AlertDialog)中制作动画的结论很慢,而且有问题 有人能证实吗 要重现问题,首先创建一个简单的布局文件: 我们可以将视图(view1、view2)替换为CustomView或

我做了几次测试(点击/手动测试),测试了
AnimatorSet
playther
,或者
ObjectAnimator
在对话框(
DialogFragment
/
AlertDialog
)中的性能,并将速度与活动或片段中的裸充气布局中的
AnimatorSet
进行了比较。我在dialog(无论是
DialogFragment
还是
AlertDialog
)中制作动画的结论很慢,而且有问题

有人能证实吗

要重现问题,首先创建一个简单的布局文件:


我们可以将视图(view1、view2)替换为
CustomView
ImageView
,或者添加一些布局约束以重新定位视图。我们也可以用
LinearLayout
RelativeLayout
等替换
ConstraintLayout
。上述代码仅用于说明

活动
对话框片段
中,使用
ObjectAnimator
AnimatorSet
设置所有视图的动画:

//查找view1和view2并声明为变量值
// ....
val listOfView=listOf(视图1、视图2)
val animSet=AnimatorSet()
val animators=listOfView.map{
val animator=ObjectAnimator.offload(它“旋转”,0f,360f)
animator.duration=1000
animator.repeatCount=ObjectAnimator.INFINITE
animator.repeatMode=ObjectAnimator.RESTART
animator.interpolator=LinearInterpolator()
动画师
}
动画集。一起播放(动画师)
animSet.start()
我在这里使用kotlin,因为Android现在正式支持kotlin

我们将观察到,
DialogFragment
中的动画有小故障,但活动/片段中的动画性能更好,速度更快。将持续时间增加到极限水平,如500或200,则
对话框中的小故障将看起来更加微妙

有人能证实这个问题吗?这背后的解释和原因是什么?如果有办法提高对话框内动画的性能,如何实现