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

Update nach replaceView(view)

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von woodi, 20.05.2011.

  1. woodi, 20.05.2011 #1
    woodi

    woodi Threadstarter Neuer Benutzer

    Beiträge:
    1
    Erhaltene Danke:
    0
    Registriert seit:
    20.05.2011
    Hallo Zusammen,

    Ich arbeite mit einer TabActivity und rufe von jedem Tab andere Aktivitäten über eine ActivityGroup auf.

    Dies funktioniert einwandfrei. Jedoch habe ich ein Problem beim Aktualisieren der einzelnen Aktivitäten.

    Screen A zeigt eine Liste (ListActivity) von Städten aus einer DB an (z.B. Hamburg, Zürich, Bern). Über einen Button wird ein neuer Screen (replaceView(view)) geöffnet und dort eine weitere Stadt eingefügt. wenn ich nun wieder zu Screen A zurückkehre mit

    Code:
    public void back() {  
            if(history.size() > 0) 
            {  
                history.remove(history.size()-1);  
                setContentView(history.get(history.size()-1));
            }
            else
            {  
                finish();  
            }  
        } 
    
    bekommt Screen A nicht mit, das er wieder aktiv ist. Ergo kann ich die Liste nicht aktuallisieren.

    Also workaround habe ich in onCreate den Code

    Code:
     handler.post(new Runnable(){
                 
                @Override
                public void run() {
                    fillData(); //daten aus DB laden  
                    handler.postDelayed(this,1500);
                    }
           });
    
    eingefügt und aktualisiere die Daten laufend.

    Gibt es keine elegantere Lösung für das Problem? einen speziellen Listener? Pattern?

    Besten Dank für eure Inputs.
    Gerne Poste ich das Komplette Projekt bei bedarf.

    en gruess
    woodi
     
  2. mauricemoss, 08.06.2011 #2
    mauricemoss

    mauricemoss Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    1
    Registriert seit:
    02.04.2010
    Phone:
    Nexus 4
    hey!

    sitze grad an dem gleichen problem.
    hast du einen guten weg gefunden?

    lg.
     
  3. the_alien, 08.06.2011 #3
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Was ist wenn requestLayout() oder requestFocus() auf dem View ausgeführt wird?
     
  4. mauricemoss, 11.06.2011 #4
    mauricemoss

    mauricemoss Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    1
    Registriert seit:
    02.04.2010
    Phone:
    Nexus 4
    wollt noch mal ein wort zu dem obigen problem loswerden.

    läuft bei mir mittlerweile wie es soll. die activity, von der aus die view aufgerufen wird muss beim zurückkehren wieder neu geladen werden. deshalb darf die ganze geschichte nicht mit einem stack implementiert werden, von dem die jeweils geladenen views wieder runtergeschmissen werden werden.

    der code auf dieser seite (TICE: Experience - Multiple Android Activities in a TabActivity) löst die ganze sache auf.

    lg
     

Diese Seite empfehlen