Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.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创建ViewPropertyAnimator动画链_Android_Animation_View - Fatal编程技术网

Android创建ViewPropertyAnimator动画链

Android创建ViewPropertyAnimator动画链,android,animation,view,Android,Animation,View,我正在尝试这个: public void onClick(View view){ tv.animate().x(600).y(100).scaleX(3).scaleY(3); tv.animate().x(400).y(1400).scaleX(1).scaleY(1); } 但它跳过了动画的第一行。 我怎样才能让它把它们链接起来,这样它就可以先做第一行,然后再做下一行?你可以试试这个 Runnable endAction = new Runnable() { p

我正在尝试这个:

public void onClick(View view){
    tv.animate().x(600).y(100).scaleX(3).scaleY(3);
    tv.animate().x(400).y(1400).scaleX(1).scaleY(1);
}
但它跳过了动画的第一行。 我怎样才能让它把它们链接起来,这样它就可以先做第一行,然后再做下一行?

你可以试试这个

 Runnable endAction = new Runnable() {
     public void run() {
         tv.animate().x(400).y(1400).scaleX(1).scaleY(1);
     }
 };

tv.animate().x(600).y(100).scaleX(3).scaleY(3).withEndAction(endAction);

正如文档中所建议的那样。

withEndAction仅适用于API 16及以上版本。您可以使用
AnimatorEventListener
而不是
。withEndAction()
AnimatorEventListener
似乎不是公共API。是吗?在这种情况下,将STARTDELAY设置为最后一行也会将start delay添加到endAction。我不希望动画之间有任何延迟要使用withEndAction,您也可以使用ViewCompat:
ViewCompat.animate(电视)。withEndAction(endAction)