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

AlertDialog abwarten

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von nubbler, 10.03.2012.

  1. nubbler, 10.03.2012 #1
    nubbler

    nubbler Threadstarter Neuer Benutzer

    Beiträge:
    9
    Erhaltene Danke:
    0
    Registriert seit:
    10.03.2012
    Hallo zusammen,

    ich würde gerne in einer for-Schleife mehrere AlertDialoge nacheinander aufrufen. Der Aufbau des nächsten Dialoges hängt von der Entscheidung im VorgängerDialog ab.
    In der for-Schleife zeigt er jedoch alle Dialoge auf einmal an ohne die Entscheidung im ersten Dialog abzuwarten.
    Kann ich hier irgendwie die Schließung des Dialoges abwarten bevor er die for-Schleife weiter ausführt?
    Gibt es einen anderen Trick wie man mehrere Dialoge in einer for-Schleife aufrufen kann und jeweils die Benutzereingabe im Dialog abwarten kann bevor die Schleife die nächste Runde dreht?

    Code:
    for (final Karte element : karten) {
        LayoutInflater factory = LayoutInflater.from(KartenActivity.this);
        final View myView = factory.inflate(R.layout.karten_abfrage, null);
                        
        //diverse anweisungen die das aussehen des dialoges definieren
                                
        new AlertDialog.Builder(KartenActivity.this)
        .setTitle("Abfrage:")
        .setView(myView)
        .setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
            
            //diverse anweisungen die das aussehen des nächsten dialoges definieren
            }
        })
        .setNeutralButton("Skip",new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
    
            //diverse anweisungen die das aussehen des nächsten dialoges definieren
            }
        })
        .setNegativeButton("Ende",new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
    
            //diverse anweisungen die das aussehen des nächsten dialoges definieren
            }
        })
        .show();
    }
    
     
  2. swordi, 10.03.2012 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    du musst im onpositve oder onnegative dann den nächsten dialog aufrufen.

    in einer for- schleife geht das nicht, wie du ja merkst
     
  3. nubbler, 10.03.2012 #3
    nubbler

    nubbler Threadstarter Neuer Benutzer

    Beiträge:
    9
    Erhaltene Danke:
    0
    Registriert seit:
    10.03.2012
    Hmm, aber prinzipiell möchte ich für jedes der Objekte die ich in der schleife durchlaufe nacheinander einen Dialog aufrufen.
    Wie wäre das denn am einfachsten zu realisieren wenn es über die schleife nicht klappt?
     
  4. swordi, 10.03.2012 #4
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    überdenke dein design. so ist das irgendwie sehr ungewöhnlich
     
  5. nubbler, 10.03.2012 #5
    nubbler

    nubbler Threadstarter Neuer Benutzer

    Beiträge:
    9
    Erhaltene Danke:
    0
    Registriert seit:
    10.03.2012
    Naja, ich möchte ganz einfach gesagt mehrere Objekte einer Unterklasse durchlaufen, bei jedem durchlauf muss eben eine Benutzereingabe erfolgen.
     
  6. swordi, 10.03.2012 #6
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    ja, nur so ist das leider nicht möglich.
     

Diese Seite empfehlen