1. DocJunioR, 17.07.2009 #1
    DocJunioR

    DocJunioR Threadstarter Android-Hilfe.de Mitglied

    Da ich ja keine Activity, sondern eine view nutze, um meine events abzufangen, bin ich auf das Problem gestoßen, dass meine View kein onKey abfängt. Daher kann ich leider auch den Back-Button nicht mit einer Funktion belegen.
    Hat das schonmal wer getan und kann mir erklären, mit welchem Listener ich meine View belegen muss??
    Oooder muss ich die Views von der Activity explizit triggern?
     
  2. Temar, 18.07.2009 #2
    Temar

    Temar Erfahrener Benutzer

    Sollte er aber, da die onKey Methoden in View eigentlich vorrang vor den onKey Methoden in Activity haben. Sicher, dass dein Eclipse nicht aus versehen ein...

    Code:
    import java.awt.event.KeyEvent;
    
    ...eingefügt hat, anstatt eines:

    Code:
    import android.view.KeyEvent;
    
     
  3. DocJunioR, 18.07.2009 #3
    DocJunioR

    DocJunioR Threadstarter Android-Hilfe.de Mitglied

    dacht ich ja ursprünglich auch, aber

    Code:
        /* (non-Javadoc)
         * @see android.view.View.OnKeyListener#onKey(android.view.View, int, android.view.KeyEvent)
         */
        @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
        Log.d("SolHunter", "Key event code "+keyCode);
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            this.viewSetter.setView("mainmenu");
            return true;
        }
        return false;
        }
    
    liefert nichtmal einen logeintrag in meiner view. da sie selbst ja die Methode mitbringt, geh ich davon aus, dass sie sich auch selbst als listener kennt..?
     
  4. DocJunioR, 18.07.2009 #4
    DocJunioR

    DocJunioR Threadstarter Android-Hilfe.de Mitglied

    warum gehen änderungen eigentlich nur gewisse zeit lang?
    Aalso auch onKey hat das gleiche Ergebnis