2012-09-01 62 views
0

我有一個存儲NFC讀取到我的應用程序數據庫的活動。我有一個具有ListView的片段,其數據由遊標適配器綁定到同一個數據庫。如何在ViewPager中管理父級活動時更新父級活動的片段?

活動處理前景中的意圖,但是當我滑動到片段時,listview尚未更新數據庫最新數據。

當我的活動將NFC讀取添加到數據庫時,告訴片段更新列表視圖的最佳方式是什麼?

片段由viewpager在活動中進行管理,所以我無法使用getFragmentById()訪問片段,因爲我沒有ID。我已經閱讀了一些奇怪的android:switcher hack來訪問片段的ID或標記,但這似乎不是一個好主意。

回答

0

3種可能的方式:

  1. 從封閉活動發送一個廣播,讓你的片段 傾聽並採取行動對廣播
  2. 實現回調機制 例如http://www.javaworld.com/javatips/jw-javatip10.html
  3. 提供您的片段的公共方法,可以通過封閉 活動
+0

被稱爲是在這些最佳實踐的順序?我想做3號,但我不知道如何獲得片段。它沒有ID或標籤,因爲它是在viewpageradapter的getItem()內部創建的。 – joepetrakovich

+0

3可能是最糟糕的選擇,因爲您的碎片將與您的活動緊密結合。我在我的代碼中使用通信方法1。 – Damian

相關問題