У меня есть MenuActivity, у которого есть RecyclerView и ViewPager. Этот ViewPager имеет 3 страницы, которые используют три разных фрагмента. FragmentOne, FragmentTwo, FragmentThree, все эти фрагменты используют данные RecyclerView. Я хочу использовать три разных ArrayList, которые необходимо установить в адаптере RecyclerView, что зависит от того, какой пользователь Fragment просматривает. Одним из решений является размещение RecyclerView во всех трех фрагментах и получение данных обновления во Фрагменте. Я просто хочу знать, можно ли установить данные адаптера в MenuActivity на основе того, что вызывается Fragment.Настройка различных адаптеров в одном RecyclerView в Android
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_menu, container, false);
recyclerView = (RecyclerView) rootView.findViewById(R.id.recycler_view);
itemList = new ArrayList<>();
prepareMenuData();
vegadapter = new MenuItemAdapter(getContext(),vegItemList);
nonvegadapter = new MenuItemAdapter(getContext(),nonvegItemList);
dessertAdapter = new MenuItemAdapter(getContext(),dessertItemList);
recyclerView.setAdapter(vegadapter);
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getContext());
recyclerView.setLayoutManager(layoutManager);
return rootView;
}
prepareMenuData();
for (MenuItem item:itemList)
{
if(item.getCategory().equals("VEG"))
{
vegItemList.add(item);
vegadapter.notifyDataSetChanged();
}
if(item.getCategory().equals("NONVEG"))
{
nonvegItemList.add(item);
nonvegadapter.notifyDataSetChanged();
}
if(item.getCategory().equals("DESSERTVEG"))
{
dessertItemList.add(item);
dessertAdapter.notifyDataSetChanged();
}
}
Этот код не знает, когда установить vegadapter, nonvegadapter и т.д. Просьба предложить. Спасибо Deepak