German keyboard bleibt nach inputdialog

Paulsche

Well-Known Member
Licensed User
Hallo,

ich benutze an mehreren Stellen inputdialog und habe da keine Probleme mit Keyboard, nur an dieser Stelle, wo ich nach Klick auf Item einer Listview
den Wert editiere.
Wenn ich das "LSTV10Einstellungen.Clear" weglasse verschwindet Keyboard nach "OK" betätigen.
Auch wenn ich nach "LSTV10Einstellungen.Clear" ein MSGBox("test","")
einfüge, verschwindet das Keyboard.

Scheint so, dasss wenn nach dem "OK" des Inputdialog gleich das Clear und dann gleich das ADD erfolgt, bleibt das Keyboard angezeigt.

Gibt es da eine Lösung oder einen Tip wie man das umgehen kann ?


B4X:
Sub LSTV10Einstellungen_fuellen                                    ' Werte für Einstellungen in Liste füllen
   LSTV10Einstellungen.Clear
   LSTV10Einstellungen.AddTwoLines2("Währungssymbol:",waehrungssymbol, waehrungssymbol)   ' Menüpunkte für Listview anlegen
   LSTV10Einstellungen.AddTwoLines2("Test2","Test2S", "sek2")
   LSTV10Einstellungen.AddTwoLines2("Test3","Test3S", "sek3")
   LSTV10Einstellungen.AddTwoLines2("Test4","Test4S", "sek4")
   LSTV10Einstellungen.AddTwoLines2("Test5","Test5S", "sek5")
   LSTV10Einstellungen.AddTwoLines2("Test6","Test6S", "sek6")
End Sub

Sub LSTV10Einstellungen_ItemClick(pos As Int, value As String)                  ' Einstellung aus Listview ausgewählt
   Select pos
      Case 0            
         InputDialog.InputType   = InputDialog.INPUT_TYPE_TEXT
         InputDialog.Input       = waehrungssymbol                        ' Eingabefeld vorbelegen
         ret = InputDialog.Show("", "Währungs-Symbol ändern", "OK", "Abbrechen", "", Null)   ' Dialog anzeigen
         If ret                = DialogResponse.CANCEL Then
            Return                                                ' Zurück zu datumseingabe
         Else
            waehrungssymbol    = InputDialog.Input                        ' in Label speichern
            LSTV10Einstellungen_fuellen
         End If
      Case 1
         Msgbox(value,"")
      
      Case 2
         Msgbox(value,"")
      
      Case 3
         Msgbox(value,"")
   
   End Select
End Sub
 

Paulsche

Well-Known Member
Licensed User
Hm, ok, kann kein so gutes Englisch, wie ich das lese soll das ein grundsätzliches Problem sein, das Problem tritt bei mir eigentlich nur in Verbindung mit dem CLEAR der Listview auf, sonst klappt es bei jedem Inputdialog von meinen mindestens 12 Stück.
Wenn ich meine Listview nach der Eingabe nicht gleich aktualisieren würde, würde es da auch funktionieren.

** eine Warteschleife nach "LSTV10Einstellungen.Clear" hilft auch nicht, nur wenn ich eine "MSGBox" setze **

OK, muss ich mir was überlegen und vielleicht bissle testen.

Danke für den Link.
 
Last edited:

Paulsche

Well-Known Member
Licensed User
Eine Lösung wäre noch, wenn ich den Tastendruck auf die Hardware-Zurück-Taste per code auslösen könnte, geht das ?
 

JOTHA

Well-Known Member
Licensed User
Eine Lösung wäre noch, wenn ich den Tastendruck auf die Hardware-Zurück-Taste per code auslösen könnte, geht das ?

Wenn überhaupt, dann damit:
KeyCodes.KEYCODE_BACK
... habe gerade leider keine Zeit um es zu testen ...
 

Paulsche

Well-Known Member
Licensed User
Hm, ist glaub nur zum abfragen wenn ein Hardwarebutton gedrückt wurde.
 
Top