ProgressDialog (ich seh nichts :) )

  • 2 Antworten
  • Neuester Beitrag
Diskutiere ProgressDialog (ich seh nichts :) ) im Android App Entwicklung im Bereich Betriebssysteme & Apps.
M

mr.freeze

Ambitioniertes Mitglied
Hallo ich will einen ProgessDialog anzeigen lassen.
Soll über einen neuen Thread geschehen.
Ich seh leider keinen Dialog.
habe folgenden Code:

Code:
Thread progressbar = new Thread(myThread);
progressbar.start();

private Runnable myThread = new Runnable(){

        @Override
        public void run() {
            
            Looper.prepare();
//            Looper.loop();
            
            int counter = 1000000;
                 try {
                     ProgressDialog dialog = ProgressDialog.show(imagedbService.this, "", 
                             "Loading. Please wait...", true);
                     dialog.show();
                     while(counter > 0){

                         Thread.sleep(50);
                         counter--;
                     }
                     dialog.dismiss();
                     
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }

            }
    };
wo ist der fehler? :)

Gruß
 
M

mr.freeze

Ambitioniertes Mitglied
Hallo,

habe es jetzt so:

Code:
/** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        final ProgressDialog dialog = ProgressDialog.show(imagedbService.this, "", 
                 "Loading. Please wait...", true);
        
        new Thread() {
       
                public void run() {

                        try{
                            int counter = 350;
                             while(counter > 0){
         
                                  Thread.sleep(50);
                                  counter--;
                              }                            
                        } catch (Exception e) { }

                        dialog.dismiss();
                }
    
        }.start();
        
        
        List<Image> images = null;
                
        if(true){
            images = getPhotosFromURL(urlToPhotos, imageDBService);
        }
//        else{
//            getPhotosFromDatabase();
//            //wird eventuell noch implementiert! Ich lasse es vorerst drin
//        }
        

        
        //Binding the apdater to the listView
        listView = (ListView) findViewById(R.id.list);
        customListAdapter = new com.bla.blubb.CustomListAdapter(this, images);
        listView.setAdapter(customListAdapter);    
    }
ich habe das in der onCreate-methode meiner activity.

ich hol mir in der activity bilder von urls.

nun will ich, dass er während er die bilder bezieht den dialog
anzeigt.
im moment zeigt er alles gleichzeitig an.
 
klausa2

klausa2

Erfahrenes Mitglied
Das ist ein typischer Einsatzfall für einen AsyncTask. Schau dir mal die Klasse an, da ist auch ein Beispiel dabei. Dann siehst Du, wo und wie du den ProgressDialog anzeigen kannst. In deinem Beispiel fehlt die klare Trennung von UI-Thread und worker-Thread.