2

私は小さなAndroidアプリの検索バーに取り組んでいます。私はこの問題に遭遇しました、そして私はそれをほぼ一週間理解することができません。

基本的な考え方は、ユーザーが検索バーに入力しているときに、ユーザーに検索候補を提供したいということです。これはかなり標準的なAutoCompleteTextView問題です。

しかし、ここでは複雑です。ユーザーに提案したい2つの異なるデータソースがあるからです。
最初のデータ(localData)は高速で、ユーザーが何かを入力したときにユーザーに直接提案したいと思います。2番目のデータ(remoteData)は、インターネットAPIリクエストを送信してデータを取得し、前のデータに追加します。 dropDownListを更新します。

だから私は2つのスレッドを持ちたいのでperformFilteringpublishResults2回実行されます。1つはローカル用で、もう1つはリモートリクエスト用です。

誰か提案はありますか?

4

2 に答える 2

0

目標を達成するために、publishResults に asynctask を追加しました。

ユーザーが入力すると、まずドロップダウンリストがローカルの提案をすぐに返し、asynctask を実行します。API リクエストが結果を返すと、onPostExecute の内容が更新されます

于 2011-06-30T18:26:28.223 に答える
0

Well I believe, that one is kinda impossible. You can sort your list of results and bind that to the ACTV.

What you can do is, hide an invisible container on the screeen and show that one while typing. =] And swap back to normal textview.

于 2011-06-29T06:56:52.260 に答える