兩個Fragment之間參數的傳遞

        使用Fragment的時候可能需要在兩個Fragment之間進行參數的傳遞,開始想着可以使用SharedPreferences進行處理,想想這些簡單的參數沒有必要使用這麼麻煩的方式去實現,翻了一下Fragment的API,找到一個方法就能實現像Activity一樣便捷的實現參數傳遞 程序中的一段代碼

ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag(“”));
				SearchProjectFragment sf = new SearchProjectFragment();
				Bundle bundle = new Bundle();
				bundle.putString("key", Projsid);
				sf.setArguments(bundle);
				ft.add(R.id.fragmentRoot, sf, SEARCHPROJECT);
				ft.addToBackStack(SEARCHPROJECT);
				ft.commit();

   可以使用bundle進行參數傳遞,這樣在兩個Fragment跳轉的時候就可以帶上參數了,在另外一個Fragment獲取參數的方式只需要一個語句String string = getArguments().getString("key");  key是自己定義的一個標識,參數的形式只要bundle能傳遞都可以實現

     這個原理好像是和Activity是一樣的。我這裏傳遞的是一個關鍵字,從一個搜索Fragment頁面跳轉到兩外一個結果查詢的Fragment頁面,在跳轉的時候也可以加上一些動畫的跳轉效果

ft.setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right);


發佈了32 篇原創文章 · 獲贊 3 · 訪問量 54萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章