[英]How to transfer data from fragment to fragment through Bundle
下面是第一個片段的適配器代碼,這里是將數據發送到第二個片段 StoreDetails。
holder.cv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
StoreDetails fragment = new StoreDetails();
Bundle bundle = new Bundle();
bundle.putString("store_id",pojo.getSTORE_ID());
bundle.putString("store_name",pojo.getSTORE_NAME());
bundle.putString("address",pojo.getSTORE_ADDRESS());
// bundle.putString("status",pojo.getSTATUS());
// bundle.putString("teammember",pojo.getSTATUS());
fragment.setArguments(bundle);
FragmentManager manager=fragment.getFragmentManager();
// in below line I am getting error
FragmentTransaction ft = manager.beginTransaction().replace(R.id.container,fragment,"fragment");
ft.addToBackStack("fragment");
ft.commit();
}
});
下面是 StoreDetails 片段
Bundle bundle = getArguments();
mstore_id = bundle.getString("store_id");
mstore_name =bundle.getString("store_name");
mstoreaddress= bundle.getString("address");
mstorestatus = bundle.getString("status");
mteammember = bundle.getString("teammember");
我收到的錯誤是
java.lang.NullPointerException:嘗試在 Adapter.Tab1_Adapter$1.onClick(Tab1_Adapter.java:78) 處的空對象引用上調用虛擬方法“android.app.FragmentTransaction android.app.FragmentManager.beginTransaction()”
FragmentManager 在它被附加到活動之前將為null
。
而不是使用
FragmentManager manager=fragment.getFragmentManager();
用
getActivity().getFragmentManager() or getActivity().getSupportFragmentManager();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.