1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

ImageView aktualisieren

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von hudea, 17.03.2011.

  1. hudea, 17.03.2011 #1
    hudea

    hudea Threadstarter Neuer Benutzer

    Beiträge:
    9
    Erhaltene Danke:
    0
    Registriert seit:
    14.03.2011
    Hallo Zusammen,

    ich brauche mal eure Hilfe, bzw. euren Rat!
    Ich möchte in einer ImageView ein Bild anzeigen lassen, welches von einer Kamera ca. alle 5 Sekunden neu generiert wird. Das Bild wird quasi immer unter eine festen Adresse abgerufen, welche ich per URL in die ImageView einlese. Funktioniert natürlich auch wunderbar. Das Problem was ich habe ist, dass das Bild nicht aktualisiert wird, sondern immer nur das zuerst eingelesen Bild angezeigt wird. Habe es versucht mit einem Thread zu lösen. Funktioniert nicht wirklich (vermutlich weil ich ersttmalig unter Android mit Threads arbeite und 'noch' zu blöde bin)

    Frage: Hat jemand eine bessere Idee wie man das ganze Problem lösen kann? Oder mal ein funktionierendes Thread Beispiel. Ich finde irgendwie nur Sachen, die mir nicht weiterhelfen!

    Danke Schonmal
    Hudea :smile:
     
  2. DieGoldeneMitte, 17.03.2011 #2
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    Beiträge:
    1,230
    Erhaltene Danke:
    256
    Registriert seit:
    05.02.2010
    Phone:
    Nexus 5X
    Tablet:
    Nexus 7 (2013)
    Typischer Fehler ist, dass der Update nicht vom Thread ausgeschmissen werden kann.

    Typisches Vorgehen hier: Einen Handler benutzen, der im UI Thread initialisiert wird.
    Code:
    class MeineActivity extends Activity {
      ...
      Handler h = new Handler();
      ...
    }
    
    Diesem kann man dann per post(Runnable) Code übergeben. Vermutlich löst das schon Dein Problem.
     
  3. hudea, 17.03.2011 #3
    hudea

    hudea Threadstarter Neuer Benutzer

    Beiträge:
    9
    Erhaltene Danke:
    0
    Registriert seit:
    14.03.2011
    Tatsache!
    Klasse, dann wäre das schonmal geschafft.
    Danke für die schnelle Hilfe =)
     
  4. dark staple, 17.08.2011 #4
    dark staple

    dark staple Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    12.08.2011
    Phone:
    HTC Magic
    Könnte vielleicht noch mal jemend was genaueres dazu sagen?
    Habe im Moment das gleiche Problem und die Antwort Handler h = new Handler(); hilft mir leider nicht viel weiter...

    Danke :)
     
  5. sixi, 18.08.2011 #5
    sixi

    sixi Erfahrener Benutzer

    Beiträge:
    237
    Erhaltene Danke:
    64
    Registriert seit:
    20.01.2009
    Das Problem liegt darin, dass NUR der UI-Thread auf die UI zugreifen darf. Dieses kann man durch mehrere Wege erreichen - einer davon sind Handler.
    Weitere:
    runOnUiThread
    AsyncTask
     
    dark staple bedankt sich.

Diese Seite empfehlen