У меня есть фрагмент ниже точки зрения Recycler, при прокрутке вниз, фрагмент должен исчезнуть, когда прокручивается вверх, фрагмент должен появитьсяиспользование анимации только один раз на свитке
Я реализовал это, но проблема в том, когда я прокручиваю вниз мало, происходит фрагментация исчезающей анимации, когда я снова прокручиваю ее, она появляется снова, и происходит анимация сползания вниз, но я хочу, чтобы она оставалась скрытой до следующего прокрутки вверх.
Вот мой код:
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
Log.d("newstate",newState+"");
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
Log.d("dx",dx+"");
Log.d("dy",dy+"");
FragmentTransaction ft1 = getFragmentManager().beginTransaction();
ft1.setCustomAnimations(R.anim.entry, R.anim.exit);
ft1.show(bmfragment);
ft1.commit();
visibleItemCount = recyclerView.getChildCount();
totalItemCount = mLinearLayoutManager.getItemCount();
firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
if(dy<0) {
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.entry, R.anim.exit);
ft.show(bmfragment);
ft.commit();
}else if(firstVisibleItem>=1)
{
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(0, R.anim.exit);
ft.hide(bmfragment);
ft.commit();
}
}
});