5

4-й час поиска и никаких результатов все равно. То, что мы не должны. Скажите, как реализовать следующее:Android. У меня собственный прогресс-бар?

  1. Там AsyncTask, который выполняет определенные действия
  2. Есть 25 фото следующего вида: Image enter image description here
  3. Там Лист Анимация XML:

    <animation-list 
         xmlns:android="http://schemas.android.com/apk/res/android" 
         android:oneshot="true" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content"> 
         <item android:drawable="@drawable/a1" android:duration="250"/> 
         <item android:drawable="@drawable/a2" android:duration="250"/> 
         <item android:drawable="@drawable/a3" android:duration="250"/> 
         <item android:drawable="@drawable/a4" android:duration="250"/> 
         <item android:drawable="@drawable/a5" android:duration="250"/> 
         <item android:drawable="@drawable/a6" android:duration="250"/> 
         <item android:drawable="@drawable/a7" android:duration="250"/> 
         <item android:drawable="@drawable/a8" android:duration="250"/> 
         <item android:drawable="@drawable/a9" android:duration="250"/> 
         <item android:drawable="@drawable/a10" android:duration="250"/> 
         <item android:drawable="@drawable/a11" android:duration="250"/> 
         <item android:drawable="@drawable/a12" android:duration="250"/> 
         <item android:drawable="@drawable/a13" android:duration="250"/> 
         <item android:drawable="@drawable/a14" android:duration="250"/> 
         <item android:drawable="@drawable/a15" android:duration="250"/> 
         <item android:drawable="@drawable/a16" android:duration="250"/> 
         <item android:drawable="@drawable/a17" android:duration="250"/> 
         <item android:drawable="@drawable/a18" android:duration="250"/> 
         <item android:drawable="@drawable/a19" android:duration="250"/> 
         <item android:drawable="@drawable/a20" android:duration="250"/> 
         <item android:drawable="@drawable/a21" android:duration="250"/> 
         <item android:drawable="@drawable/a22" android:duration="250"/> 
         <item android:drawable="@drawable/a23" android:duration="250"/> 
         <item android:drawable="@drawable/a24" android:duration="250"/> 
         <item android:drawable="@drawable/a25" android:duration="250"/> 
         </animation-list> 
    
    • Там XML разметки:
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" > 
     <ImageView 
      android:id="@+id/image" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="bottom|left|right|top" 
      android:layout_margin="50dp" /> </RelativeLayout> 

как получить в AsyncTask в методе:

защищен недействительным onProgressUpdate (Integer ... прогресс) { }

Индикатор работы не бесконечен, а только при загрузке данных в AsynkTask.

Иногда бывает, что данные уже загружают анимацию и по-прежнему идут, или нет данных оборачивания, и анимация окончена.

Скажите, пожалуйста, как решить эту проблему. За более раннее спасибо всем, кто отвечает!

+0

Попробуйте его настроить https://github.com/passsy/android-HoloCircularProgressBar – Aamirkhan

+0

Дубликат этого вопроса, я бы сказал: http://stackoverflow.com/questions/13745428/how-to-create-a- custom-progress-dialog-over-riding-the-default-one-in-android –

+0

@Aamirkham Пробовал, но это не то, что мне нужно. – user3068658

ответ

0

Что-то вроде этого, но этот код показывает мне, почему это нормальный диалог прогрессбара/

public class MainActivity extends Activity { 
    private static final String TAG = "MyApp"; 
    private ProgressDialog progressDialog; 
    Button buttonStart; 
    public String a; 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     buttonStart = (Button) findViewById(R.id.buttonStart); 

    } 
    public void onclick(View v) { 
     new MyTask().execute(); 
    } 

    class MyTask extends AsyncTask<String, Integer, Void> { 
     @Override 
     protected void onPreExecute() { 
      super.onPreExecute(); 
      buttonStart.setVisibility(View.INVISIBLE); 
      progressDialog = new ProgressDialog(MainActivity.this); 
      progressDialog.setCancelable(true); 
      progressDialog.setProgressDrawable(getResources().getDrawable(R.drawable.a1)); 
      progressDialog.show(); 
     } 
     @Override 
     protected Void doInBackground(String... urls) { 
      for (int i = 1; i < 25; i ++) { 
       a = "a" + i; 
      } 
      return null; 
     } 

     @Override 
     protected void onProgressUpdate(Integer... values) { 
      super.onProgressUpdate(values);  
      Resources res = getResources(); 
      int myId = res.getIdentifier(a, "drawable", "app.pogress"); 
      Drawable d = res.getDrawable(myId); 
      progressDialog.setProgressDrawable(getResources().getDrawable(R.drawable.a1)); 
      progressDialog.setProgressDrawable(d); 
     } 

     @Override 
     protected void onPostExecute(Void result) { 
      super.onPostExecute(result); 

     } 


    } 


} 

Где ошибка?

Смежные вопросы