リストビューのアイテムをクリックすると、行のデータが別のフラグメントに渡されて表示されます。しかし、今問題は、フラグメントが既に表示することができますが、データが通過することはできません。私は引数を設定するためにバンドルを使用しています。リストビューのデータはフラグメントに渡すことができません
私はすでにポストを見つけましたが、いずれかのポストは私がこの問題を解決する必要はありませ...
これは私のリストビューのJava
otherAdapter adapter = new otherAdapter(getActivity(), R.layout.grid_single, result);
grid_list.setAdapter(adapter);
grid_list.setOnItemClickListener(new AdapterView.OnItemClickListener() { // list item click opens a new detailed activity
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
otherModel othermodel = result.get(position);
Bundle bundle = new Bundle();
bundle.putString("otherModel",new Gson().toJson(othermodel));
OtherDetail other = new OtherDetail();
other.setArguments(bundle);
getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.container,new OtherDetail()).addToBackStack(null).commit();
}
と私のフラグメントのJavaで私はgetArgumentを呼び出すようにしようと使用していますですデータ。
Bundle bundle = this.getArguments();
if(bundle != null) {
String json = bundle.getString("otherModel"); // getting the model from MainActivity send via extras
otherModel otherModel = new Gson().fromJson(json, otherModel.class);
}
アクティビティ・フラグメント通信については、[このリンク](https://developer.android.com/training/basics/fragments/communicating.html)を参照してください。 –
なぜあなたは、putSerializable()を使ってバンドル内のotherModelのオブジェクトを渡さないのですか? –