AutoCompleteTextView Hintergrund / Vordergrundfarbe

Ich arbeite an AutoCompleteTextView.Its funktioniert gut, aber der Dropdown-Text ist immer weißer Text auf weißem Hintergrund. Dieses Bild erkläre mein Problem

Bild erkläre mein Problem

  • Wie kann ich dynamisch eine Liste aller Android ui Komponenten programmgesteuert erstellen? ZB TextView, ImageView etc
  • So finden Sie den Paketnamen, der bei der Verwendung von Intent.ACTION_PACKAGE_REMOVED deinstalliert wurde
  • Eclipse Android AVD Emulator zeigt keine Schaltflächen für benutzerdefinierte Auflösung Skin
  • Android: Set List View Item als "ausgewählt" (hervorgehoben)
  • Android Lollipop gemeinsame Elemente Übergang Blink / Flash
  • Ist es möglich, diese Android-Bildschirm-Animation mit einem ViewPager zu tun?
  • Bildbeschreibung hier eingeben

    XML:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#000" > <!-- <AutoCompleteTextView --> <AutoCompleteTextView android:id="@+id/text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="Tapez votre 1texte" android:textColor="#000" /> </LinearLayout> 

    Java:

     view = (AutoCompleteTextView)findViewById(R.id.text); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,data); adapter.setDropDownViewResource(R.drawable.ic_action_search);//dd view.setAdapter(adapter); 

  • Android check null oder leere Zeichenfolge in Android
  • Bestätigung und Rückgängigmachen in RecyclerView
  • Android NDK: Keine Regel, um Ziel zu machen
  • BlueZ vs Bluedroid bluetooth Stapel
  • Twitter Bootstrap modal auf mobilen Geräten
  • Horizontale Scrolling-Gitteransicht
  • 6 Solutions collect form web for “AutoCompleteTextView Hintergrund / Vordergrundfarbe”

    Wenn Sie das Aussehen der Dropdown-Elemente ändern möchten, ändern Sie das XML-Layout, das Sie an den ArrayAdapter übergeben (in Ihrem Fall ist dies android.R.layout.simple_dropdown_item_1line ).

    Lets machen ein neues Layout namens my_list_item.xml in res/layout :

     <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" style="?android:attr/dropDownItemStyle" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center" android:padding="5dp" android:textAppearance="?android:attr/textAppearanceMediumInverse" android:textColor="#00f" /> 

    Dieser Text ist kleiner, blau und zentriert. Ich empfehle nicht, dieses Layout zu verwenden, es ist mehr zu zeigen, dass Sie es anpassen können.

    Nutzen Sie das bitte:

     view = (AutoCompleteTextView)findViewById(R.id.text); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.my_list_item, data); view.setAdapter(adapter); 

    Wenn Sie hier Attribute setzen (wie die Textfarbe):

     <AutoCompleteTextView android:id="@+id/text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="Tapez votre 1texte" android:textColor="#000" /> 

    Sie ändern nur die Box über der Dropdown-Liste (die Box, die Sie sehen, bevor Sie mit dem AutoCompleteTextView interagieren). Ich hoffe, das hilft!

    Diese Frage könnte alt sein, aber ich glaube, das ist sehr wichtig für mich zu teilen. Ich hatte das gleiche Problem wie OP erlebt, aber es ist, weil ich 'getApplicationContext ()' anstelle von 'this'

    Falsch

     ArrayAdapter<String> adapter = new ArrayAdapter<String> (getApplicationContext(), android.R.layout.simple_list_item_1, PLACES); 

    Richtig

     ArrayAdapter<String> adapter = new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1, PLACES); 

    Eine heikle Lösung dafür ist: Fügen Sie diese Zeile setTheme (android.R.styleTheme); Vor setContentView() in Ihrer Aktivitätsdatei, in der Ihre autocompletetextview vorhanden ist. Lassen Sie mich wissen, ob das funktioniert.

    Antwort von didldum https://code.google.com/p/android/issues/detail?id=5237

    Workaround durch Erweiterung des Themas und Überschreiben der 2 Styles für den eingegebenen Text und den Vorschlag Text:

    1. Verwenden Sie ein erweitertes Thema in Ihrem Manifest: … …

    2. Erstellen Sie das neue Thema (res / values ​​/ themes.xml), das feste Stile verwendet: … @ style / AutoCompleteTextViewLight @ style / Widget.DropDownItemLight …

    3. Erstellen Sie die Stile (res / values ​​/ styles.xml), die die Farbe beheben: … @android: color / primary_text_light @android: color / primary_text_light

    Ich habe versucht, das Thema vor setcontext, versucht verschiedene Ressourcen-Parameter in arrayAdapter und versucht verschiedene Thema, aber nichts geholfen.

    Dann habe ich den Kontext von 'this' in 'getApplicationContext' geändert, aber das Problem war persistent.

    Schließlich habe ich den Kontextparameter auf "getBaseContext ()" geändert und das Problem wurde behoben.

    Ich habe meine Lösung in slecting Layout von "select_dialog_singlechoice ArrayAdapter<String > s1= new ArrayAdapter<String> (this,android.R.layout.select_dialog_singlechoice,state); geben Sie hier Bildbeschreibung ein

    Anstatt den Anwendungskontext zu erhalten, schreibe "dies" in ArrayAdapter <>;

    Versuchen Sie es mit verschiedenen Layouts und werden definitiv Ihre Fragen lösen

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.