pull/178/head
FongMi 2 years ago
parent 0db8462f21
commit f1e1f63198
  1. 2
      app/build.gradle
  2. 10
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/VodActivity.java
  3. 5
      app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java

@ -11,7 +11,7 @@ android {
minSdk 21 minSdk 21
targetSdk 28 targetSdk 28
versionCode 210 versionCode 210
versionName "20231205" versionName "20231205#2"
javaCompileOptions { javaCompileOptions {
annotationProcessorOptions { annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()] arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]

@ -42,6 +42,7 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
private ActivityVodBinding mBinding; private ActivityVodBinding mBinding;
private ArrayObjectAdapter mAdapter; private ArrayObjectAdapter mAdapter;
private PageAdapter mPageAdapter; private PageAdapter mPageAdapter;
private boolean coolDown;
private View mOldView; private View mOldView;
public static void start(Activity activity, Result result) { public static void start(Activity activity, Result result) {
@ -149,6 +150,11 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
return (VodFragment) mPageAdapter.instantiateItem(mBinding.pager, mBinding.pager.getCurrentItem()); return (VodFragment) mPageAdapter.instantiateItem(mBinding.pager, mBinding.pager.getCurrentItem());
} }
private void setCoolDown() {
App.post(() -> coolDown = false, 2000);
coolDown = true;
}
@Override @Override
public void onItemClick(Class item) { public void onItemClick(Class item) {
updateFilter(item); updateFilter(item);
@ -161,8 +167,8 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
@Override @Override
public boolean dispatchKeyEvent(KeyEvent event) { public boolean dispatchKeyEvent(KeyEvent event) {
if (KeyUtil.isBackKey(event) && event.isLongPress()) getFragment().goRoot();
if (KeyUtil.isMenuKey(event)) updateFilter((Class) mAdapter.get(mBinding.pager.getCurrentItem())); if (KeyUtil.isMenuKey(event)) updateFilter((Class) mAdapter.get(mBinding.pager.getCurrentItem()));
if (KeyUtil.isBackKey(event) && event.isLongPress() && getFragment().goRoot()) setCoolDown();
return super.dispatchKeyEvent(event); return super.dispatchKeyEvent(event);
} }
@ -171,7 +177,7 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
Class item = (Class) mAdapter.get(mBinding.pager.getCurrentItem()); Class item = (Class) mAdapter.get(mBinding.pager.getCurrentItem());
if (item.getFilter() != null && item.getFilter()) updateFilter(item); if (item.getFilter() != null && item.getFilter()) updateFilter(item);
else if (getFragment().canBack()) getFragment().goBack(); else if (getFragment().canBack()) getFragment().goBack();
else super.onBackPressed(); else if (!coolDown) super.onBackPressed();
} }
class PageAdapter extends FragmentStatePagerAdapter { class PageAdapter extends FragmentStatePagerAdapter {

@ -268,10 +268,11 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback
onRefresh(); onRefresh();
} }
public void goRoot() { public boolean goRoot() {
if (mPages.isEmpty()) return; if (mPages.isEmpty()) return false;
mPages.clear(); mPages.clear();
getVideo(); getVideo();
return true;
} }
@Override @Override

Loading…
Cancel
Save