處理多個fragment之間replace刷新問題
處理多個fragment之間replace刷新問題[轉]
每次創建fragment對象都會重新走onCreateView方法,所以多個fragment互相替換會重新刷新界面, 在application中創建一個View,保持onCreateVIew中創建的View 每次走onCreateView的時候判斷application中是否保持了View,如果為null,重新inflater走initView和initData方法,不為nul得到父類,移除子View,不然有父id無法再加入布局中, 以下是代碼: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { GalaxyApplication galaxyApplication = (GalaxyApplication) getActivity().getApplication(); View recommendView = galaxyApplication.getRecommendView(); if(recommendView != null){ ViewGroup group = (ViewGroup) recommendView.getParent(); group.removeAllViews(); return recommendView; } View fmRootView = inflater.inflate(R.layout.fragment_recommend, container,false); initView(fmRootView); initData(); galaxyApplication.setRecommendView(fmRootView); Logger.d("fragment: ", "onCreateView"); return fmRootView; } 如有好的方法,處理onCreateView刷新問題 歡迎留言。 |
posted on 2014-02-22 22:55 何云隆 閱讀(555) 評論(0) 編輯 收藏 所屬分類: Android