2016-07-19 63 views
0

我有兩個簡單的活動,一個是正常活動,第二個是半透明活動。在正常之上的半透明。我必須同時在兩個活動中啓動兩個動畫。如何在不同的活動上同時啓動兩個動畫

我對時機感到困惑,任何人都可以建議我們如何實現這一目標?
在此先感謝。

我使用簡單的翻譯動畫在兩個地方,但時間不匹配:

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); 

我使用的動畫上面的代碼。

回答

3

要做這樣的事情,使用片段,而不是活動。活動可以輕鬆控制兩個片段中的動畫,因此您的問題可以輕鬆解決。正如另一個答案中提到的,這不能通過使用活動來實現,因爲動畫一旦處於後臺就會被銷燬。通過使用Activity類的接口,可以輕鬆實現片段間通信。我建議你閱讀關於片段之間的片段和通信。

2

您不能在兩個不同的活動來啓動兩個分開的動畫。放在那裏後臺的活動將被銷燬。只能在當前可見活動中開始動畫。

+1

第一句話+1。其次是錯誤的,尤其是'會被摧毀'的部分。其他活動可能會被破壞,但不一定。並且以活動爲主題,因此您可以看到潛在的活動,但是播放任何動畫可能會有問題,因爲其onPause()已被調用 –

相關問題