EditText Wörterbuch abstellen ?

  • Antworten:7
Mac Systems
  • Forum-Beiträge: 1.727

01.02.2011, 17:38:20 via Website

Irgendwie sehe Ich im SDK dazu nicht wie das Wörterbuch abzustellen ist.

Für sachdienliche Hinweise schon mal vielen Dank ;)

— geändert am 01.02.2011, 17:39:33

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

01.02.2011, 18:31:41 via Website

Ab API Version 5 gibt es : android:inputType="textNoSuggestions"
schön, aber was mache Ich unter API Level 4 ?

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Ansgar M
  • Forum-Beiträge: 1.544

01.02.2011, 19:06:58 via App

Hm,
vielleicht irgendeine Flag à la LINK oder so? Nur ne Idee :)
Lg Ansgar

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

01.02.2011, 19:33:47 via Website

Du kannst hier die XML Attribute sehen: http://developer.android.com/reference/android/R.attr.html

Allerdings funtzt es wenn ich noch folgendes angebe: android:imeOptions="actionSearch"

Das bringt dieses Lupen Symbol in die Tastatur, passt sogar in meinem Fall da der User etwas suchen will welches nicht im Wörtbuch zu finde sein wird.
Daraus generiert sich die Frage wie ich den klick auf die Lupe mitbekomme ? Diese sollte doch gleich dem Enter Key sein ? Auf einer Hardware Tastatur würde sich das ja auch nicht anders umsetzten lassen *denk ich mir zumindest so*

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

01.02.2011, 20:02:38 via Website

Die nächste "Merkwürdigkeit" :

final EditText textField = (EditText) findViewById(R.id.codeTextfield);
textField.setOnEditorActionListener(new OnEditorActionListener()
{

@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN)
{
Log.d(LOG_TAG, "Enter Pressed");
return true;
}
return false;

}
});


Funtzt wenn ich enter im Emulator drücke. Drücke ich das Luoen Symbol ist der KeyEvent null und fliegt entsprechend auf die Nase. Dieses API Design ist aber nicht gut gelungen um if(bla !=null) Verkettungen zu vermeiden.

*rumprobier einige minuten*

So geht beides:

@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
if (event !=null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN)
{
// Log.d(LOG_TAG,"KeyEvent "+event.getKeyCode() +"="+
// event.getAction());
Log.d(LOG_TAG, "Enter Pressed");
return true;
}
else if(actionId == EditorInfo.IME_ACTION_SEARCH) // <-- Kommt aus meinem XML siehe weiter oben im Thread ;)
{
Log.d(LOG_TAG, "Lope Pressed");
return true;
}
return false;



}
});



Wichtig ist das man den Return richtig zurückliefert da ich sonst beide tasten events in der methode bekomme.

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

02.02.2011, 10:02:48 via Website

Habe gerade mal auf einem Galaxy S getestet mit 2.1 und leider wird das Wörtbuch wieder angezeigt. Einfache sachen sind mal wieder sehr kompliziert gehalten :(
Im Emulator gehts :/

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Ansgar M
  • Forum-Beiträge: 1.544

02.02.2011, 12:46:03 via App

Dein Galaxy ist noch auf 2.1? :grin: :grin:
Lg Ansgar

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

02.02.2011, 12:54:19 via Website

Wieso meins ? ist nen testdevice ... das spielt als keine rolle!

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten