如何及时刷新listview内容

时间:2014-04-27 10:26:53

标签: android android-listview

您好我想及时刷新列表视图,这里我没有添加/删除任何行。我想刷新,因为要刷新行中的现有数据。

我这样做但这不适合我。

// Update the Message on the screen to help for troubleshooting.
private void updateListView() {
    // Callback to update the message in a second.
    new CountDownTimer(30000, 1000) {

        @Override
        public void onTick(long arg0) {
            adapter.notifyDataSetChanged();
            listView.invalidateViews();
            listView.refreshDrawableState();
        }

        @Override
        public void onFinish() {

        }
    }.start();
}

1 个答案:

答案 0 :(得分:2)

只需使用处理程序和notifyDataSetChanged:

    final Handler handler = new Handler();
    final int REFRESH_EVERY_X_MS = 1000;
    handler.postDelayed(new Runnable() {

        @Override
        public void run() {
            mAdapter.notifyDataSetChanged();
            handler.postDelayed(this, REFRESH_EVERY_X_MS);
        }
    }, REFRESH_EVERY_X_MS);

如果你想停止(你应该),请使用handler.removeCallbacks并设置与参数完全相同的runnable。