我有两个简单的活动,一个是正常活动,第二个是半透明的。透明度高于正常透明度。我必须在两个活动上同时开始两个动画。
我对时间感到困惑,任何人都可以建议我们如何实现这个目标? 提前谢谢。
我在两个地方使用简单的翻译动画,但时间不匹配:
Animation a = new ScaleAnimation(1, 1, 0, 1, Animation.RELATIVE_TO_SELF,
(float) 0.5, Animation.RELATIVE_TO_SELF, (float) 0);
a.setFillAfter(true);
tabLayout.setAnimation(a);
a.setDuration(400);
a.setInterpolator(new LinearOutSlowInInterpolator());
tabLayout.setVisibility(View.VISIBLE);
tabLayout.startAnimation(a);
我用于动画的上述代码。
答案 0 :(得分:3)
要做这样的事情,请使用片段而不是Activity。 Activity可以轻松控制两个片段中的动画,因此您的问题可以轻松解决。正如在另一个答案中所提到的,这不能通过使用活动来实现,因为动画一旦在后台就会被销毁。通过Activity类使用接口可以轻松实现片段间通信。我建议你阅读片段之间的碎片和通信。
答案 1 :(得分:2)
您无法在两个不同的活动中启动两个单独的动画。一旦放在那里,活动将被销毁。您只能在当前可见活动中启动动画。
答案 2 :(得分:1)
尝试使用AnimationSet进行计时。
https://developer.android.com/reference/android/view/animation/AnimationSet.html