[英]Switching Fragments in TabHost
這是我的布局設計:
MainActivity
|
MainFragment
|
TabHost
|
_____________________
| | | |
Tab1 Tab2 Tab3 Tab4
|
ft.replace(MainActivityContainer, FragmentThatDoesSomething)
|
FragmentThatDoesSomething
如您所見,在主活動容器上有一個執行ft替換的按鈕,並加載FragmentThatDoesSomething來完成任務。
在FragmentThatDoesSomething中,我想有一個返回TabHost的Tab2並保留標簽的按鈕。
我使用該活動在片段之間傳輸數據,因此在活動中我想執行一些ft事務以返回到tab2。
最簡單的方法是什么? 如果我使用getChildFragmentManager和Tab2的容器運行ft事務,則會遇到此問題
因為我使用的是支持v4 Fragment類。
我將對片段事務使用addToBackStack(null) 。 然后,FragmentThatDoesSomething中定義的按鈕可以調用getActivity.onBackPressed() 。
那時,只需要確保保存狀態即可。
// MainActivity.java
@Override
public void someCallbackMethod(Object obj1, Object obj2) {
// have MainActivity store your values and Tab2 fragment accesses data
// through callback references when Tab2.onCreateView() is called.
onBackPressed();
// OR retrieve your Tab2 fragment and manually update values here via
// some kind of accessor
}
編譯'com.android.support:design:22.2.0'我需要使用上面的材料設計庫來解決您的問題。 您可以在一個viewPager中添加多個片段。
它將為您提供其他更多選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.