From 62d22455b32847e11b754a7ba90ed2cf991ef716 Mon Sep 17 00:00:00 2001 From: FongMi Date: Fri, 7 Apr 2023 12:44:08 +0800 Subject: [PATCH] [leanback] add progress for folder vod --- .../fongmi/android/tv/ui/fragment/VodFragment.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java b/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java index 5dc86fa74..cd0ca5aff 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java @@ -86,7 +86,6 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback mTypeIds = new ArrayList<>(); mExtends = new HashMap<>(); mFilters = Filter.arrayFrom(getFilter()); - mBinding.progress.getRoot().setVisibility(View.VISIBLE); setRecyclerView(); setViewModel(); } @@ -111,10 +110,10 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback mViewModel = new ViewModelProvider(this).get(SiteViewModel.class); mViewModel.result.observe(getViewLifecycleOwner(), result -> { int size = result.getList().size(); - mBinding.progress.getRoot().setVisibility(View.GONE); mScroller.endLoading(size == 0); addVideo(result.getList()); checkPage(size); + hideProgress(); }); } @@ -138,6 +137,7 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback private void getVideo(String typeId, String page) { if (page.equals("1")) mLast = null; + if (page.equals("1")) showProgress(); if (isFolder()) mTypeIds.add(typeId); if (isFolder() && !mOpen) mBinding.recycler.moveToTop(); int filterSize = mOpen ? mFilters.size() : 0; @@ -175,6 +175,14 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback return new ListRow(adapter); } + private void showProgress() { + mBinding.progress.getRoot().setVisibility(View.VISIBLE); + } + + private void hideProgress() { + mBinding.progress.getRoot().setVisibility(View.GONE); + } + private void showFilter() { List rows = new ArrayList<>(); for (Filter filter : mFilters) rows.add(getRow(filter));