From 4a9fe89d6daafebfad1e23a82e63a972e3110355 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sun, 30 Jul 2023 17:37:59 +0800 Subject: [PATCH] Clean code --- .../tv/ui/activity/CollectActivity.java | 3 +- .../tv/ui/fragment/CollectFragment.java | 32 +++++++------------ .../com/fongmi/android/tv/bean/Collect.java | 4 --- .../tv/ui/activity/CollectActivity.java | 4 +-- 4 files changed, 14 insertions(+), 29 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CollectActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CollectActivity.java index 1ee07c040..63deb658e 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CollectActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/CollectActivity.java @@ -189,8 +189,7 @@ public class CollectActivity extends BaseActivity { @NonNull @Override public Fragment getItem(int position) { - Collect collect = (Collect) mAdapter.get(position); - return CollectFragment.newInstance(getKeyword(), collect.getSite(), collect.getList()); + return CollectFragment.newInstance(getKeyword(), (Collect) mAdapter.get(position)); } @Override diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/CollectFragment.java b/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/CollectFragment.java index 5b203e9d6..17f472d90 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/CollectFragment.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/fragment/CollectFragment.java @@ -14,8 +14,8 @@ import androidx.viewbinding.ViewBinding; import com.fongmi.android.tv.Product; import com.fongmi.android.tv.R; +import com.fongmi.android.tv.bean.Collect; import com.fongmi.android.tv.bean.Result; -import com.fongmi.android.tv.bean.Site; import com.fongmi.android.tv.bean.Vod; import com.fongmi.android.tv.databinding.FragmentVodBinding; import com.fongmi.android.tv.model.SiteViewModel; @@ -39,12 +39,11 @@ public class CollectFragment extends BaseFragment implements CustomScroller.Call private ArrayObjectAdapter mLast; private CustomScroller mScroller; private SiteViewModel mViewModel; - private List mItems; + private Collect mCollect; private String mKeyword; - private Site mSite; - public static CollectFragment newInstance(String keyword, Site site, List items) { - return new CollectFragment().setKeyword(keyword).setSite(site).setItems(items); + public static CollectFragment newInstance(String keyword, Collect collect) { + return new CollectFragment().setKeyword(keyword).setCollect(collect); } private CollectFragment setKeyword(String keyword) { @@ -52,20 +51,11 @@ public class CollectFragment extends BaseFragment implements CustomScroller.Call return this; } - private CollectFragment setSite(Site site) { - this.mSite = site; + private CollectFragment setCollect(Collect collect) { + this.mCollect = collect; return this; } - private CollectFragment setItems(List items) { - this.mItems = items; - return this; - } - - private boolean isAll() { - return mSite.getKey().equals("all"); - } - @Override protected ViewBinding getBinding(@NonNull LayoutInflater inflater, @Nullable ViewGroup container) { return mBinding = FragmentVodBinding.inflate(inflater, container, false); @@ -73,23 +63,22 @@ public class CollectFragment extends BaseFragment implements CustomScroller.Call @Override protected void initView() { - mScroller = new CustomScroller(this); setRecyclerView(); setViewModel(); } private void setRecyclerView() { CustomSelector selector = new CustomSelector(); - if (!isAll()) mBinding.recycler.addOnScrollListener(mScroller); selector.addPresenter(ListRow.class, new CustomRowPresenter(16), VodPresenter.class); mBinding.recycler.setAdapter(new ItemBridgeAdapter(mAdapter = new ArrayObjectAdapter(selector))); mBinding.recycler.setHeader(getActivity().findViewById(R.id.result), getActivity().findViewById(R.id.recycler)); + mBinding.recycler.addOnScrollListener(mScroller = new CustomScroller(this)); mBinding.recycler.setVerticalSpacing(ResUtil.dp2px(16)); } private void setViewModel() { mViewModel = new ViewModelProvider(this).get(SiteViewModel.class); - mViewModel.search.observe(this, result -> { + mViewModel.result.observe(this, result -> { int size = result.getList().size(); mScroller.endLoading(size == 0); addVideo(result.getList()); @@ -98,7 +87,7 @@ public class CollectFragment extends BaseFragment implements CustomScroller.Call @Override protected void initData() { - addVideo(mItems); + addVideo(mCollect.getList()); } private boolean checkLastSize(List items) { @@ -136,7 +125,8 @@ public class CollectFragment extends BaseFragment implements CustomScroller.Call @Override public void onLoadMore(String page) { - mViewModel.searchContent(mSite, mKeyword, page); + if (mCollect.getSite().getKey().equals("all")) return; + mViewModel.searchContent(mCollect.getSite(), mKeyword, page); mScroller.setLoading(true); } diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Collect.java b/app/src/main/java/com/fongmi/android/tv/bean/Collect.java index 310b0e234..11d108673 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Collect.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Collect.java @@ -42,8 +42,4 @@ public class Collect { public void setActivated(boolean activated) { this.activated = activated; } - - public boolean isAll() { - return getSite().getKey().equals("all"); - } } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/CollectActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/CollectActivity.java index e37171483..91e0016c7 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/CollectActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/CollectActivity.java @@ -149,7 +149,7 @@ public class CollectActivity extends BaseActivity implements CustomScroller.Call private void setViewModel() { mViewModel = new ViewModelProvider(this).get(SiteViewModel.class); mViewModel.search.observe(this, result -> { - if (mCollectAdapter.getActivated().isAll()) mVodAdapter.addAll(result.getList()); + if (mCollectAdapter.getPosition() == 0) mVodAdapter.addAll(result.getList()); mCollectAdapter.add(Collect.create(result.getList())); mCollectAdapter.add(result.getList()); }); @@ -283,7 +283,7 @@ public class CollectActivity extends BaseActivity implements CustomScroller.Call @Override public void onLoadMore(String page) { - if (mCollectAdapter.getActivated().isAll()) return; + if (mCollectAdapter.getPosition() == 0) return; mViewModel.searchContent(mCollectAdapter.getActivated().getSite(), mBinding.keyword.getText().toString(), page); mScroller.setLoading(true); }