2012-02-28 84 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" 
/> 
相关问题