2012-01-27 29 views
0

我有一個網絡任務在AsyncTask中定義,需要大約2-3秒才能完成。動畫導致AsyncTask HttpClient任務超級慢

當我添加下面的動畫代碼:

<?xml version="1.0" encoding="utf-8"?> 
<rotate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromDegrees="0" 
    android:toDegrees="360" 
    android:pivotX="50%" 
    android:pivotY="50%" 
    android:repeatCount="infinite" 
    android:duration="60" 
    android:interpolator="@android:anim/linear_interpolator" /> 

,然後在我的活動執行,如下所示:

progressImageView = (ImageView) getWindow().findViewById(
      R.id.progressImageView); 
progressAnimation = AnimationUtils.loadAnimation(this, R.anim.progress); 
progressImageView.startAnimation(progressAnimation); 

網絡通話大約需要12-13秒才能完成。我在這裏做了一件令人難以置信的錯誤嗎?

回答

2

我猜想問題是持續時間值,它以毫秒爲單位,我猜你希望它更像6000或60000(1分鐘)。

值很小可能會導致UI線程備份大量幀更新,從而延遲處理異步任務中的onProgressUpdate和onPostExecute代碼。

嘗試將持續時間設置爲較大的值。

+0

這似乎是這個問題。謝謝。 – PolandSpring 2012-02-02 11:35:17