Я установил RecyclerView
в Fragments
из TabView
. Данные Recylerview задаются с помощью RestApi
. Когда один элемент в Tab2
удаляется, элемент необходимо добавить в Tab3
вызывая RestApi. Tab2
содержит список неактивных участников. Tab3
содержит список активных участников. После активации члена с Tab2
необходимо вызвать RestApi
для обновления списка Tab3
.
Это код для интерфейса обратного вызова в Tab2`
OnTableAddedListener tlistener;
public interface OnTableAddedListener
{
void addTable();
}
Этот обратный вызов вызывается после того, как элемент активирован как
public void removeItem(int position)
{
current.remove(position);
adapter.notifyItemRemoved(position);
adapter.notifyItemRangeChanged(position,current.size());
if(tlistener!=null){
tlistener.addMember);
}
}
Я реализовал интерфейс обратного вызова в Tab3
.вызывается в Tab3
после активации участника, и необходимо добавить активных участников, вызвав RestApi
и новые данные.
@Override
public void addTable() {
getData();
FreeTable table=new FreeTable();
tx=fm.beginTransaction();
tx.detach(table);
tx.attach(table);
tx.commit();
}
Но Fragment
не обновить? Как решить эту проблему?
Это код для ViewPager для добавления вкладок
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v=inflater.inflate(R.layout.choose_tab, container, false);
//-----------------------------------------------------------------------------------
tabLayout=(TabLayout)v.findViewById(R.id.simpleTabLayout);
viewPager=(ViewPager)v.findViewById(R.id.simpleViewPager);
viewPager.setOffscreenPageLimit(3);
tabLayout.addTab(tabLayout.newTab().setText("Total Members"));
tabLayout.addTab(tabLayout.newTab().setText("Inactive Member"));
tabLayout.addTab(tabLayout.newTab().setText("Active Member"));
// tabLayout.addTab(tabLayout.newTab().setText("Auto Suggest"));
// PagerAdapter adapter=new PagerAdapter(getActivity().getSupportFragmentManager(),tabLayout.getTabCount());
//------------------------------------------------------------------------------------------------------------
PagerAdapter adapter=new PagerAdapter(getActivity().getSupportFragmentManager(),tabLayout.getTabCount());
//PagerAdapter adapter=new PagerAdapter(getChildFragmentManager(),tabLayout.getTabCount());
viewPager.setAdapter(adapter);
tabLayout.addOnTabSelectedListener(this);
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
return v;
}