EditText zur Laufzeit ein editable zuweisen

  • Antworten:5
  • OffenNicht stickyBentwortet
  • Forum-Beiträge: 308

09.05.2020, 19:35:54 via Website

Hallo zusammen

Zur Laufzeit lege ich eine EditText an. Für die Eingabe möchte ich nur Zahlen zulassen.

edt_neu = new EditText(Main.this);
            Editable.Factory editable = new Editable.Factory();
            edt_neu.setEditableFactory(editable);

Bin ich da auf dem richtigen Weg? Wie kriege ich mein Tastaturlayout in die Factory.

Gruss Renato

Diskutiere mit!
Beste Antwort
  • Forum-Beiträge: 1.218

10.05.2020, 21:43:35 via Website

OK
Aber ich habe dir doch die java Methode genannt. Brauchst du doch nur auf deine neue Variable anwenden.
Ob du da in einem Dialog bist ist doch egal. Nach dem Erstellen setzt du die Eigenschaft.

— geändert am 10.05.2020, 21:45:42

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 11.012

09.05.2020, 20:08:43 via Website

Hallo Renato,

ich glaube über den InputType und die zugelassenen Ziffern kommst du besser ans Ziel:
https://stackoverflow.com/a/9334417/4975457, schau dir auch die anderen Antworten an, wenn du das im XML machen willst und nicht über den Code

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 1.218

09.05.2020, 20:13:21 via Website

Hallo das kannst du doch schon im Layout ereichen durch.

android:inputType="number"

In Java : setInputType(int type)

Doch wider von Kotlin zu Java Umgestiegen. :)

PS. @Pascal du warst schneller:)

— geändert am 09.05.2020, 20:15:30

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 308

10.05.2020, 21:04:58 via Website

Ciao Jokel

Danke für eure Hilfe. Aber ich verwende die EditText in einem Dialog.

               edt_neu = new EditText(Main.this);
            edt_neu.setInputType(InputType.TYPE_NUMBER_FLAG_SIGNED);
            dlg_eingabe = new AlertDialog.Builder(Main.this);
            dlg_eingabe.setTitle(getResources().getString(R.string.lbl_lang));
            dlg_eingabe.setMessage(getResources().getString(R.string.lbl_in));
            dlg_eingabe.setView(edt_neu);
            dlg_eingabe.setPositiveButton(getResources().getString(R.string.lbl_speichern), LpositivListener);
            dlg_eingabe.setNegativeButton(getResources().getString(R.string.lbl_verlassen), negaitvListener);
            dlg_eingabe.show();

Es hat mir trotzdem weiter geholfen

Keine Angst. Ich bleibe Kotlin treu. Es hat zu viele geniale Sachen dabei. Aber die alten Projekte stelle ich nicht auf Kotlin um. Die sind zu umfangreich.

Gruss Renato

Hilfreich?
Diskutiere mit!
Beste Antwort
  • Forum-Beiträge: 1.218

10.05.2020, 21:43:35 via Website

OK
Aber ich habe dir doch die java Methode genannt. Brauchst du doch nur auf deine neue Variable anwenden.
Ob du da in einem Dialog bist ist doch egal. Nach dem Erstellen setzt du die Eigenschaft.

— geändert am 10.05.2020, 21:45:42

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 308

11.05.2020, 08:00:23 via Website

Ciao Jokel

Ja genau es hat mir recht viel geholfen. Danke für die Hilfe.

Gruss Renato

Hilfreich?
Diskutiere mit!
Empfohlene Artikel bei NextPit