我在我的Android应用程序中使用了AutoCompleteTextView,它运行正常。我面临的唯一问题是默认情况下建议的颜色是白色的,我无法看到任何建议。因此,当我开始输入内容时,列表会扩展为带有白色条目(不可见),但是当我点击任何项目时,我发现它的工作原理应该是这样。只有颜色似乎是问题。我使用以下代码。
<AutoCompleteTextView android:id="@+id/location" android:textColor="#000000"
android:layout_width="fill_parent" android:layout_height="wrap_content"></AutoCompleteTextView>
和
ArrayAdapter<String> autoadapter=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,cities);
city = (AutoCompleteTextView) findViewById(R.id.location);
city.setAdapter(autoadapter);
city.setThreshold(1);
city.setTextColor(Color.BLACK);
有谁能告诉我这是什么问题? - 提前谢谢
答案 0 :(得分:15)
这是一个记录错误,
您可以找到一些方法在同一个链接中修复它。
注意:此解决方案不适用于lollipop
我希望它有所帮助...
答案 1 :(得分:11)
我尝试在setcontext之前设置主题,在arrayAdapter中尝试了不同的资源参数并尝试了不同的主题,但没有任何帮助。
然后我将上下文从'this'更改为'getApplicationContext',但问题仍然存在。
最后我将context参数更改为“getBaseContext()”,问题解决了。
答案 2 :(得分:7)
对于 Lollipop ,报告的bug中解决方案的所有工作都不起作用。
我终于找到了一个适用于lollipop
以及之前操作系统版本的解决方案,使用android.R.layout.simple_spinner_dropdown_item
代替adapter
代替以下内容:
ArrayAdapter<String> adapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinner_dropdown_item, suggestionList);
这将解决白色文本问题,无需更改主题属性或任何内容。
答案 3 :(得分:3)
您可以在simple_list_item_1
,
ArrayAdapter
ArrayAdapter<String> autoadapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,cities);
city = (AutoCompleteTextView) findViewById(R.id.location);
另一种解决方案是退出AndroidManifest.xml
注意:此解决方案不适用于lollipop
操作系统版本
答案 4 :(得分:3)
好吧,我们无法设置&#34;建议文字&#34;颜色,但我们可以改变它的背景!只需使用此示例中的android:popupBackground="YOUR_COLOR_HEX"
:
<AutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/autocompletetextview"
android:layout_gravity="center_horizontal"
android:hint=" ... "
android:popupBackground="#000000"/>
也适用于棒棒糖! ;)
答案 5 :(得分:1)
你应该使用
setTheme(android.R.style.Theme);
之前 setContentView
它对我有用:)
答案 6 :(得分:1)
将弹出窗口的背景颜色设置为city.setDropDownBackgroundResource(R.color.indicator);
答案 7 :(得分:1)
如果还有人有同样的问题
这对我有用
autocompleteF.setBackgroundColor(color.black);
答案 8 :(得分:0)
将此添加到您的主题:
<item name="android:autoCompleteTextViewStyle">@style/Widget.AppCompat.AutoCompleteTextView</item>
答案 9 :(得分:0)
这对我有用首先使用之前的 setContentView()
setTheme(android.R.style.TextAppearance_DeviceDefault_Medium_Inverse);
你必须在values文件夹
中的colors.xml中更改一些颜色