2016-08-18 43 views
0

我正在使用材料選項卡,我使用了3個選項卡。如何在開關時更新摺疊數據選項卡

選項卡[產品列表]

擁有回收名單和數據從遠程服務器填充。對於EX,它有產品名稱,圖像和喜愛的圖像

選項卡B [收藏的產品列表]

標籤C [聯繫方式]

我嘗試實施,一旦用戶的喜愛按鈕選擇(添加到收藏夾)該特定列表項在TAB_B中顯示[收藏產品列表]

我已經使用共享首選項並將數據保存爲Gson格式。我按照這個教程

http://androidopentutorials.com/android-how-to-store-list-of-values-in-sharedpreferences/

的問題是,一旦我添加項目並從產品列表[標籤A]項表現良好,並且沒有在標籤B [收藏的產品列表]顯示。一旦我重新啓動應用程序收藏夾產品列表顯示在Tab b。我用了一些像廣播接收機那樣的技巧,但它不能正常工作。

我用it.neokree:MaterialTabs:0.11庫來填充選項卡

這裏是我的,我一直在使用的一些代碼。

請指導我,我做錯了。

+0

您可以使用EventBus。或在ViewPager更新列表geItem(int位置)將公共方法添加到片段 – Esperanz0

+0

在所有三個選項卡中,是否使用碎片? – fluffyBatman

+0

@ Esperanz0:請你給我舉個例子。我爲這個新點 – Umanda

回答

0

由於您正在使用的庫基本上使用ViewPager來管理給定的片段作爲製表符,所以這個setUserVisibleHint片段的方法應該是您可以在每次加載時更新您的標籤內容的地方。

public void setUserVisibleHint(boolean isVisibleToUser) { 
     super.setUserVisibleHint(isVisibleToUser); 

     if (isVisibleToUser) { 
       // Do stuffs that you want to do every time this fragment loads 
     } else { 
     } 
} 
+0

我試過這個。 :(沒有任何運氣我找到了。 – Umanda

1
  1. 在gradle這個文件
  2. 添加compile 'org.greenrobot:eventbus:3.0.0「在每一個片段加入的onCreate()

     EventBus.getDefault().register(this); 
    
  3. 在每一個片段加入onDestroyView

     EventBus.getDefault().unregister(this); 
    
  4. 創建Java類對於事件 例子:

      public class EventUpdateList { 
    
          private boolean listNeedUpdate= true; 
    
          public EventUpdateList (boolean listNeedUpdate) { 
           this.listNeedUpdate= listNeedUpdate; 
          } 
    
          public boolean isListNeedUpdate() { 
           return listNeedUpdate; 
          } 
    
         } 
    
  5. 在所有片段添加

    @Subscribe(threadMode = Main) 
        public void onListRefresh(EventUpdatelist eventUpdateList) 
        { 
         if (eventUpdateList.isNeedListUpdate) 
        { 
        // refresh your list 
    
        } 
    
        } 
    
  6. 在你的活動添加

    EventBus.getDefault.post(new EventUpdateList(true)); 
    

而且所有3個片段得到有關事件刷新列表信息。 你甚至可以發佈帶有完整列表的事件來刷新,而不是這個布爾值,並得到3個片段。

+0

非常感謝你的隊友,我很清楚你所說的話,我會試試這個,並且會更新它的作品與否 非常感謝你寶貴的時間。 – Umanda

+0

這是完美的工作 – Umanda

+0

@Umanda如此密切的問題:) – Esperanz0

相關問題