2011-05-05 63 views
1

在我的應用程序中,我使用標籤,它有設置,主頁等標籤。在設置頁面中有一些帶有文本的文本視圖。在主頁中有一個在後臺運行的異步任務。如何從異步任務中獲取當前窗口的引用? Android

現在我想要的是,當用戶正在觀看設置頁面,並且如果從home.java類的異步任務完成doInBackground方法,我想更新設置頁面中的textview。

如何獲取home.class中異步任務的onPostExecute方法中設置頁面的textview的引用?請提供一些線索或實現此方法..

謝謝你..

回答

1

你不應該試圖直接從您的AsyncTask的onPostExecute()方法訪問的TextView。而是臨時存儲要設置到TextView某個位置的值,並在訪問設置頁時從中檢索該值。

要存儲值,您可以使用不同的機制。如果你不需要堅持它,你可以使用一個單獨的類,它可以從你的應用程序的任何地方訪問。要堅持這個值,你應該使用shared preferences,一個文件或一個數據庫。

檢查this page瞭解更多信息。

+0

我希望textview在用戶在設置頁面上時動態更新(在doInBackground完成之後)。 – 2011-05-05 09:49:29

+0

我可以在settings.class中放置一個線程來更新每個特定時間的字段。但我不想這樣..我想從另一個類(home.java)訪問textview有可能嗎?像getCurrentFocus等。 – 2011-05-05 09:52:41

+0

@manidhar mulaparthi:「我想從另一個類(home.java)訪問textview是可能的嗎?」 - 這不是一個好主意。請遵循@Flo提供的建議。 – CommonsWare 2011-05-05 10:00:03