2012-01-27 1 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 минута).

Значение, которое мало, вероятно, заставляет поток пользовательского интерфейса получать резервные копии с большим количеством обновлений фреймов, которые задерживают его от обработки кода onProgressUpdate и onPostExecute в задаче Async.

Попробуйте установить продолжительность на большее значение.

+0

Кажется, что это было проблемой. Благодарю. – PolandSpring