質問

私のシナリオは次のとおりです。2つの列が私にとって興味深いデータベースを持っています。これで、AutoCompleTeTextViewを作成しました。ここでは、SQLを介して1つの列のエントリを介してアダプターGEHTSを作成しました。

これまでのところ...とても良いですが、私が実際に望んでいるのは、ユーザーがSTHを入力した場合です。 AutoCompleteFieldに私はこれに気づき、テキストを取得します。 sql経由で私は今、エヴァーのエントリーを取得したい 列2 ここで、列1の値が入力されたテキストに含まれています。このリストはアダプターに表示する必要があります。言い換えれば、私はSQLを介して自分でデータをフィルタリングしますが、それらをアダプターに表示してほしいです。問題は, 、アダプターには、AutoCompleteFieldのテキストから始まるエントリのみが表示されますが、Adapterをいつでも表示したいと思います。これを解決する方法はありますか? AutoCompleTeTextViewは使用するのに適したアイテムですか?

また、シンプルなスピナーを使用することも考えました...しかし、スピナーを使用する場合、2つの主な問題があります。最初に私は彼を編集しなければなりません。次に、「ポップアップ」の代わりにドロップダウンが必要になります。 ...

この問題を解決するための私のもう1つのアイデアは、オートコンプリートフィールドの独自のフィルターを書くことです...しかし、私はこれまでこれをダウンしたことがなく、インターネットでそうする例を見つけることができませんでした。

ご協力いただきありがとうございます

役に立ちましたか?

解決

SpinnerのArrayAdapterメソッドを変更し、カスタムスピナーを手に入れました。このメソッドのパラメーターを次のように変更するだけです

 Spinner spinner = (Spinner) findViewById(R.id.Spinner01);
 ArrayAdapter<CharSequence>   adapter=ArrayAdapter.createFromResource(This,R.array.statename,R.layout.mylayout);
 spinner.setAdapter(adp);

MyLayoutファイルには含まれています

<EditText 
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:id="@+id/spinnerTarget"
 android:textColor="#FF8B1500"
 android:gravity="center"
>

他のヒント

以下に示すように、AutoCompleTeTextViewを使用して、SQLiteまたはString Arrayからの値にアダプターを設定できます。

String values[]= {"Orange","Apple","Pineapple"};
AutoCompleteTextView text=(AutoCompleteTextView)findViewById(R.id.a1);
text.setAdapter(new ArrayAdapter<String>    
    (this,android.R.layout.simple_dropdown_item_1line,values));

詳細については、に進んでください 開発者サイト

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top