Wert einer String-Variable als ID eines EditText "string".requestFocus();

  • Hallo und danke für dieses tolle Forum.
    Ich habe mir hier schon viele Infos raus gesaugt und mich nun endlich mal angemeldet.


    Ich habe eine EditText-ID z.B. "meinEditText1" in einer String-Variable namans "tempFocusID".
    Wie kann ich die in der String-Variable gespeicherte EditText-ID z.B. "meinEditText1" für die .requestFocus() - Methode anwenden,


    so dass am Ende also


    meinEditText1.requestFocus();



    ausgeführt wird?



    Vielen Dank.

  • Code
    String tempFocusID = "meinEditText1";
    
    
    tempFocusID.requestFocus();
    
    
    /*
    soll Focus auf meinEditText1 setzen, wie die Zeile: 
    meinEditText1.requestFocus();
    */

    Oder gibt es einen eleganteren Weg, den Focus auf ein EditText zu setzen, dessen ID man zwischenzeitlich in den Prefs gespeichert hatte?

  • Hi
    Ich sagte schon das es nicht geht einen string als methoden Aufruf zu benutzen. Wie den auch da mußte es ja zu Laufzeit neu compiliert werden. Soetwas get in Java oder in einer Compiler Sprache nicht.


    Bevor du den Fokus setzt könntest du deine pref einlesen, und prüfen ob diese true ist und dann halt den Fokus auf die Instanz die du mit findViewById bekommenhast setzen.


    Auch wenn du jetzt auf die Idee kommst die Instanz Speichen zu wollen wird das nicht gehen die ist beim nechsten start der app anders.


    Du kannst auch die Id "int" oder "R. Id. deineid"
    In der pref Speichen und die beim findviewbyid benzuten. Das in der onCreate beim Start aufrufen.
    Das ganze kommt etwas auf deinen Progammaufbau an. I



    Programm Code kann nicht zur Laufzeit verändert werden auf jeden Fall nicht in Java.
    Was ja bekanntlich compiliert wird.

  • Danke für die Denkanstöße.
    Habe noch ein paar andere Ansätze ausprobiert und bin jetzt ersteinmal bei der erwas hölzernen switch-Lösung geblieben.

Jetzt mitmachen!

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