AutoCompleteTextView の紹介を見て参考に作成すると、
ドロップダウンで表示するリストが真っ白で、何が候補に表示されてるのか
見えない、ひどい有様になる。
これでは使いものにならない。
これを解決するのは、android:popupBackground を指定することではない!
setAdapter で指定する Adapter が作成する View で文字色を指定することで解決する。
例)
final AutoCompleteTextView autoText = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
autoText.setOnEditorActionListener(new TextView.OnEditorActionListener(){
@Override
public boolean onEditorAction(TextView v,int actionId,KeyEvent event){
return false;
}
});
autoText.setAdapter(getAdapterForAutoText());
//--------------------------------------------------------
protected ArrayAdapter<String> getAdapterForAutoText(){
ItemDB itemDB = new ItemDB(this); // キー入力した記録のデータベース
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext()
,android.R.layout.simple_list_item_1
,itemDB.queryAllStrings() // キー入力した記録から数件を取得して渡す。String[]
){
@Override
public View getView(int position,View convertView,ViewGroup parent){
TextView textview = (TextView)super.getView(position,convertView,parent);
textview.setTextColor(0xff000000);
return textview;
}
};
return adapter;
}
android:completionThreshold="1" を指定して、、以下のようにセ成功
無事、実機で動かしてきちんと表示される。
よく紹介されてる記事は、エミュレータでのキャプチャ画像ばかりで
なんか動作が怪しい。