0

所以它是这样的:

我有一个带有 TimerTask 的 AsyncTask。每 15 秒运行一次 AsyncTask。AsyncTask 获取 XML 数据并将其放入动态创建的 TextView 中,该 TextView 包含在动态创建的 TableRow 中。

onPostExecute 我创建了所有的 tableRow 和 TextView,然后为了不让它们加倍而不是刷新,我删除了 tableRow 视图。

protected void onPostExecute(Document result)
{
if(TableLayout.getChildAt(1) == null)
{
    //All my code to show tableRow and TextView
else
{
    int u = 20;
    while(tl.getChildAt(1) != null)
    {
        if(tl.getChildAt(u) != null)
            tl.removeViewAt(u);
        u--;
    }
}

所以是的,一切都很好。我只是想知道是否有某种方法可以让我的 TimerTask 立即重新启动,而不是等待 x 毫秒为 timerTask 重新开始?

谢谢你的帮助!

4

1 回答 1

0

所以是的,我找到了一种方法来做到这一点。我会发布以防其他人想做类似的事情。

protected void onPostExecute(Document result)
    {

        if(tl.getChildAt(1) == null)
        {
            //do some code              
        }
        else
        {
            int u = 20;
            while(tl.getChildAt(1) != null)
            {
                if(tl.getChildAt(u) != null)
                    tl.removeViewAt(u);
                u--;
                }
                //do same code over again as above.

                }
            }
        }

这将删除 tableRows 并重新创建新的,从而“更新”它们

于 2012-06-07T19:03:03.757 回答