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

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • 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.
  • 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.
    Ein Feedback auf Tipps ist auch schön. :P
  • 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.

    Quellcode

    1. String tempFocusID = "meinEditText1";
    2. switch(tempFocusID) {
    3. case "meinEditText1":
    4. meinEditText1.requestFocus();
    5. break;
    6. case "meinEditText2":
    7. meinEditText2.requestFocus();
    8. // u.s.w.
    9. }
    Alles anzeigen