Extra Eingabe Fenster in App öffnen

  • Hi,
    ich bin noch blutiger Anfänger was die Android Entwicklung angeht. Zum spielen und lernen wollte ich jetzt eine App schreiben welche die aktuellen GPS Koordinaten darstellt, und mit der man zu einer Zielkoordinate hinnavigieren kann.


    Die eigene Position habe ich + einen Eintrag im Menü über welchen man das Ziel einstellen können soll.


    Mein Problem ist jetzt folgendes, soll ich für die Eingabe Maske eine eigene Activity erstellen? Oder kann ich das mit einem extra window in der main activity lösen?
    Bei einer 2. Activity wie bekomme ich die Daten zurück in die Main Activity?


    Wenn mir jemand den Ablauf in android spezifischen Stichwörtern darstellen könnte, wäre ich sehr dankbar.

  • 1) Activity öffnet Dialog und setzt OnClicklistener für dessen "ok" button
    2) Dialog bekommt Eingabe -> Klick auf "ok" triggered OnClickListener
    3) OnClickListener holt Werte ausm dialog und gibt sie an Activity weiter
    4) Activity ändert die Anzeige entsprechend


    Wenn du deine Activity selber OnClickListener implementieren lässt, isses am einfachsten.

  • Erstmal Danke für die Antwort, über die Dialogs bin ich zwischenzeitlich schon selbst gestolpert (http://developer.android.com/g…alogs.html#ShowingADialog)


    Allerdings stürtzt die App bei mir beim Aufruf des Dialogs kommentarlos ab (stopped unexpected...). Auch in Eclipse wird leider keine exaktere Fehlermeldung angezeigt.
    Hier mal der Code des Dialogs.



    Standard-Dialogerzeugung:

    Code
    protected Dialog onCreateDialog(int id) {
    	    Dialog dialog=null;
    	    if(id == DIALOG_TARGET)
    	    {
    	    	dialog = customDialog();
    	    }else
    	    	dialog = null;
    	    return dialog;
    	}


    Wenn ich hier den Aufruf der customDialog() Methode unterbinde läuft das Programm passiert allerdings logischerweise auch nixs. Da ich den Code aber mehr oder weniger von der Dev Seite kopiert habe, handelt es sich wohl um ein fundamentales Problem und nicht um nen falschen Aufruf?


    Dialog individualisieren:


    Menüaufruf:

    Code
    public boolean onOptionsItemSelected(MenuItem item) {
    	    // Handle item selection
    	    	showDialog(DIALOG_TARGET);
    	        return true;
    	    }
    	}
  • Den DDMS hatte ich bisher noch nicht gefunden, danke für den Tipp.


    Beim klick auf den Menüpunkt tauchen folgende Fehlermeldungen auf:



    P.S: gibts denn die Möglichkeit sich per System.out.print() o.ä. sich Testausgaben irgendwo anzeigen zu lassen?

  • So nächstes Problem ...


    Ich habe in dem Eingabe Dialog EditText Objekte benützt, Problem ist jetzt diese bei einem Klick auf den Button zu finden. Ich habe das Problem zwar gelöst aber ziemlich hässlich, das muss auch besser gehen:


    Dirty Lösung:


    Globales Objekt:


    Code
    private Dialog dialog;


    OnClick:

    Code
    public void onClick(View v) {
    				View par = (View) v.getParent();
    				TextView text = (TextView) ATEST.this.findViewById(R.id.target_text);
    				EditText etext =  (EditText)ATEST.this.dialog.findViewById(R.id.lat_edit);
    				if(etext != null)
    					etext.setText("YEEEEEEHA");
    			
    				ATEST.this.dismissDialog(DIALOG_TARGET);
    			}



    Ich frage mich halt wozu und welche View der onClick Methode Übergeben wird, da ich über die gar nichts ansprechen kann :-/


    Wie kann ich den mit dem DDMS anständig Debuggen? ( Objektzustände anschauen, Testausgaben etc.)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!