我正在尝试“幻灯片”动画两个视图,它们是另一个视图(y exiss)。
这就是我在做的事情:
TranslateAnimation precentageTranslateAnim = new TranslateAnimation(0, 0, shareBtnsHeight, 0);
precentageTranslateAnim.setDuration(TRANSLATE_ANIMATION_DURATION);
DecelerateInterpolator interpulator = new DecelerateInterpolator();
precentageTranslateAnim.setInterpolator(interpulator);
precentageLayout.setVisibility(View.VISIBLE);
precentageLayout.startAnimation(precentageTranslateAnim);
reactionsBtnsLayout.startAnimation(precentageTranslateAnim);
我的问题是,当动画发生时,您可以看到视图没有完全一起移动。
动画期间它们之间有一条小线。
有没有办法在它们之间进行同步?
答案 0 :(得分:2)
因为你是在不同的时刻开始动画,你需要并行运行它们,为了你的帮助,幸运的机器人能够使用不同的动画和并行运行它们的选项。执行以下操作。
http://developer.android.com/reference/android/view/animation/AnimationSet.html
阅读以上链接了解更多详情。代码
ObjectAnimator animator1 = ObjectAnimator.ofFloat(precentageLayout, "y", shareBtnsHeight,0);
ObjectAnimator animator2 = ObjectAnimator.ofFloat(reactionsBtnsLayout, "y", shareBtnsHeight,0);
animator1.setDuration(TRANSLATE_ANIMATION_DURATION);
animator1.setDuration(TRANSLATE_ANIMATION_DURATION);
DecelerateInterpolator interpulator = new DecelerateInterpolator();
animator1.setInterpolator(interpulator);
animator2.setInterpolator(interpulator);
AnimatorSet set = new AnimatorSet();
set.playTogether(animator1,animator2);
set.start();