0

場所(ネットワークまたはgps)の受信には時間がかかるため、リストビューで位置データをどのように使用しますか。作成時にリストビューにデータが入力されている場合、多くの場合、場所はまだ見つからず、nullになります。

このタイプのビューを設計してリストビューをレンダリングし、その後行に位置データを入力するのが最善の方法ですか?

もしそうなら、そうでなければ、最良のアプローチは何ですか?これをコード例でどのように実装しますか?

4

1 に答える 1

0

ListViewとそのデータリストを設定し、データが変更されたときに通知することができます。これが例です。

ArrayList<String> myData = new ArrayList<String>();
ListView myListView = null;

@Override
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   ...

   myListView = (ListView)findViewById(R.id.mylistview);
   myListView.setAdapter(new ArrayAdapter<String>(this, R.id.textlayout, myData));
}

私がしたことは、リストビューを取得し、空の配列リストを使用してアダプターをセットアップすることでした。これで、リストビューのデータを更新したいときはいつでも、次のようにします。

myData.add("My new location");
myListView.getAdapter().notifyDataSetChanged();

リストビューが更新されます。これを行う別の方法は、渡されたリストではなく、データをアダプターに直接追加することです。

myArrayAdapter.setNotifyOnChange(true);
myArrayAdapter.add("My new location");
于 2011-10-19T15:25:37.970 に答える