diff --git a/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/Adapter/TimelineAdapter.java b/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/Adapter/TimelineAdapter.java index 787a10f..0cd685a 100644 --- a/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/Adapter/TimelineAdapter.java +++ b/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/Adapter/TimelineAdapter.java @@ -105,7 +105,7 @@ public void onClick(View v) { public void onClick(View v) { if(fragmentManager != null) { Bundle bundle = new Bundle(); - bundle.putInt("position", position); + bundle.putString("itemID", itemList.getItemID()); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); // BackStackを設定 fragmentTransaction.addToBackStack(null); diff --git a/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/fragment/DetailFragment.java b/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/fragment/DetailFragment.java index 1c7d4bf..846d5f3 100644 --- a/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/fragment/DetailFragment.java +++ b/app/src/main/java/jagsc/jp/abc2019Sconferenceapp/fragment/DetailFragment.java @@ -19,7 +19,20 @@ import androidx.recyclerview.widget.RecyclerView; public class DetailFragment extends Fragment { - private int position; + private String itemID; + + + private TimelineDataBean.TimelineData getTimelineDataFromItemID(String itemID){ + for(TimelineDataBean.TimelineData d:MainActivity.timelineData.getData()){ + if(null==d || null==d.getItemID()){ + continue; + } + if(d.getItemID().equals(itemID)){ + return d; + } + } + return null; + } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { @@ -28,11 +41,14 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa Bundle bundle = getArguments(); if (bundle != null) { - position = bundle.getInt("position"); + itemID = bundle.getString("itemID"); } if (MainActivity.timelineData != null) { - final TimelineDataBean.TimelineData timelineData = MainActivity.timelineData.getData().get(position); + final TimelineDataBean.TimelineData timelineData = getTimelineDataFromItemID(itemID); + if(null==timelineData){ + return v; + } RecyclerView detailRecyclerView = v.findViewById(R.id.presenterRecyclerView); DetailAdapter detailAdapter = new DetailAdapter(timelineData, getFragmentManager(), this);