2013-03-02 56 views
0

我對我以前的ListView活動有疑問。在後臺更新之前活動的列表視圖

我有我的ListView這是繼續更新使用套接字連接,現在當我點擊任何列表行我可以去我的下一個屏幕,現在當我回到我以前的ListView屏幕我的ListView開始更新但開始,但是我想繼續更新我的ListView在後臺,當我在我的nextscreen上。

就像我想保持我以前的屏幕活着,當我在我的nextscreen上。

+0

你爲什麼試圖更新一個View用戶看不到? – tolgap 2013-03-02 16:54:09

+0

我想保持我的統計最新在後臺,因爲我的套接字不斷偵聽來自服務器的json消息 – Nik 2013-03-02 17:01:57

+0

然後使用'Service'作爲後臺作業。你不應該在後臺使用Activity來做任何事情。事實上,我認爲這是不可能的。 – tolgap 2013-03-02 17:30:10

回答

0

聽起來對我來說就像你用來加載你的數據的代碼ListView綁定到你的Activity。 例如,您的Activity中有一個AsyncTaskThread,您的Activity擁有您的ListView,您可以使用它來下載數據,或者執行任何操作來獲取數據以填充列表。我還假設你在Activity生命週期方法之一中開始它,例如onCreate()

如果是這種情況,那麼您應該考慮將代碼用於從活動代碼中獲取列表的數據。

執行此操作的一種方法是使用Service,它可以獨立運行應用程序的其餘部分,並執行所有繁重的提取操作以獲取列表中的數據。您可以在應用程序的任何位置與服務進行通信。 Service可以將數據保存到數據庫。然後,您在活動中所需執行的操作就是查詢數據庫並填充適配器,以便毫不拖延地獲取最新數據。

你可以閱讀更多關於這裏的服務: http://developer.android.com/reference/android/app/Service.html

+0

非常感謝:-) – Nik 2013-03-02 17:30:23

0

你可以(並且可能應該)做保建議你可以改變你的方式使用FragmentsViewFlipper切換你的屏幕。這樣,您仍然在運行您的AsyncTaskThread,同時在其他頁面上執行其他操作。

相關問題