2

如何在 Android 的列表视图中不断更新列表项?

我有一个监控正在进行的交易进度的活动。当我加载进度视图时,它会捕获创建时的状态,但我自然想更新它。

我尝试遵循这个答案,但这会创建一个代码块,即使活动不在焦点上也会不断执行。

也许有某种我不知道的动态列表视图适配器?

4

1 回答 1

3

链接的答案大部分都很好,只需稍微调整一下以防止它在之后运行onPause()

private boolean mRunning;

Handler mHandler = new Handler();

Runnable mUpdater = new Runnable() {
    @Override
    public void run() {
        // check if still in focus
        if (!mRunning) return;

        // upadte your list view

        // schedule next run
        mHandler.postDelayed(this, 500); // set time here to refresh views
    }
};

@Override
protected void onResume() {
    super.onResume();
    mRunning = true;
    // start first run by hand
    mHandler.post(mUpdater);
}

@Override
protected void onPause() {
    super.onPause();
    mRunning= false;
}
于 2013-09-17T03:40:55.110 回答