0

我正在为 Android 设计一个电视指南应用程序。它将通过 HTTP:GET 请求访问服务器并通过 XML 提供程序详细信息。

因为数据是动态的,所以我必须不断刷新它。我会将数据存储在像 ArrayList 这样的数据结构中,而不是在 sqlite 数据库中。

我的问题是如何刷新数据。我想每 30 分钟刷新一次数据,但似乎效率不高。

还有什么办法吗?同步适配器在这里有用吗?

4

1 回答 1

2

您必须使用 Handler 及其 postDelayed 方法使列表的适配器无效,如下所示:

    Handler handler = new Handler()
    handler.postDelayed( new Runnable() 
   {
        @Override
        public void run() 
         {
            // Call Webservice fetchdata and stored into arraylist and notifydataset
            adapter.notifyDataSetChanged();
            handler.postDelayed( this, 60 * 1000 );
         }
    }, 60 * 1000 );

这里上面的代码每 1 分钟工作一次。您需要根据您的要求更改时间。

于 2012-12-21T06:33:37.930 回答