2012-02-28 80 views
0

我有很多佈局,我希望使用動畫但在它們之間暫停,我可以在不使用線程的情況下執行此操作嗎?在不使用線程的情況下在動畫之間暫停

final LinearLayout imagineL = (LinearLayout) findViewById(R.id.applayer); 
final LinearLayout btneyeviewL = (LinearLayout)findViewById(R.id.eyeviewlay); 
final LinearLayout btnonlineL = (LinearLayout) findViewById(R.id.onlinelay); 

final Animation a = AnimationUtils.loadAnimation(this, R.anim.layanim); 
    a.reset(); 
    imagineL.clearAnimation(); 
    imagineL.startAnimation(a); 
    //pause for 1sec here 
    a.reset(); 
    btneyeviewL.clearAnimation(); 
    btneyeviewL.startAnimation(a); 
    //pause for 1sec here 
    a.reset(); 
    btnonlineL.clearAnimation(); 
    btnonlineL.startAnimation(a); 

回答

1

因爲您不允許保持UI線程繁忙,所以您不能在不使用線程的情況下實現此目的。

你可以,也可能應該做的是間接使用線程,例如,通過使用AsyncTask或Timer

1

發現:

​​
+0

對於簡單的動畫,它似乎相當容易,而不是插入計時器並佔用2個問題... – 2013-03-01 00:31:20

0

也許爲時已晚,但我發現了另外一個簡單的解決方案:

只需創建一個動畫(pause.xml)與暫停這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<alpha xmlns:android="http://schemas.android.com/apk/res/android" 
    android:duration="1000"  
    android:repeatCount="0" 
/> 
相關問題