0

リモートサーバーに接続してそこからデータを取得するアプリケーションがあります。

このデータによると、ListView 接続オブジェクトにいくつかの変更を加え、notifyDataSetChanged() メソッドを使用して ListView を更新し、変更を反映しています。

残念ながら、このメソッドは常にリストを更新するとは限りません。

onUpdate() はリストを更新するはずです。

@Override
public void onUpdate() {
    runOnUiThread(updateClientsInRangeRunnable());  
}

private Runnable updateClientsInRangeRunnable()
{
    Runnable run = new Runnable() {

        @Override
        public void run() {
            updateClientsInRangeList(); 
        }
    };
    return run;
}

public void updateClientsInRangeList()
{
    setClientsInRangeList();
    listArrayAdapter.notifyDataSetChanged();
}

リストを更新したいときはいつでも onUpdate() メソッドが呼び出されますが、常にそうであるとは限りません...行われた変更はオブジェクト内のプロパティの変更であり、ListView は再表示されますが、変更は ListView をリロードしているときにのみ更新されません

理由はありますか??

4

1 に答える 1

0

あなたが示したコードから判断するのは難しいですが、 setClientsInRangeList() が実際に新しいデータを取得できていない可能性はありますか?

于 2012-10-28T22:38:47.973 に答える