2011-01-28 16 views
0

これは私の問題です。Android - AutocompleteTextViewドロップダウンの質問

String[] list = ws.getList() ///returns a String[] of 2900 elements. 

AutoCompleteTextView actv= (AutoCompleteTextView)findViewById(R.id.field); 

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.dropdownmenu, list); 
actv.setAdapter(adapter); 

私の質問は、私は自分のアプリケーションを実行したとき、私はそれを入力するたびに、私のautocompletetextviewは、テキストの任意の並べ替えを生成しません...です。しかし、私のリストを好きなように短縮すれば、30個の要素が完全に動作します。オートコンプリート・テキスト・ビューは一定量のアイテムに限定されていますか?

ありがとうございます!

答えて

1

私は約5000のエントリを持つ開発中のアプリでオートコンプリート・テクスチャ・ビューを持っており、うまくいきます。 しかし、実際のデバイスでは、デバッグを行わずにtrueに設定するとかなり遅くなります。したがって、エミュレータで実行すると、フィルタ処理を実行してから候補を表示するために長いlong型が必要になるため、何も表示されない可能性が非常に高いです。私の知る限り

、私は同じ問題を抱えている項目

0

の数に制限はありません。私は問題をスリムにしようと多くのテストを行ってきました。

xmlファイルを使用して、オートコンプリートフィールドに配列を供給しています。 2.2では、配列が大きすぎるとアクティビティがクラッシュします。 2.3では、同じ配列では何の問題も生じません。

私のアレイは約950のノードで構成されています。 私はそれが約200にdoenをスリムにしたら、それはいいです。 (私はクラッシュの原因となる正確な数字には注意していませんでした)

0

私は似たような問題がありましたが、データが不慣れなデータベースから取り出されたため、私はこのような私のリストを作成し、それはうまく動作します。リスト内の空文字列または空文字列は、ドロップダウンが開かないようにします。

if(mystring!=null && !mystring.isEmpty()) { //add to list here }

あなたは各文字列が値を持って知っているので、たぶん、30のテストが働いています。私は同様のテストを行い、それがうまくいくことを発見しました。これは上記の解決策/アイデアにつながりました... 2年後...まだこの問題に取り組んでいるのだろうか)