From 7ce4ea3360d91fb86924fdb900261c03f9ff5955 Mon Sep 17 00:00:00 2001 From: okjack Date: Sun, 31 Mar 2024 10:15:59 +0800 Subject: [PATCH] HomeMenuKey --- .../com/fongmi/android/tv/ui/dialog/MenuDialog.java | 12 ++++++++++-- .../fongmi/android/tv/ui/dialog/MenuKeyDialog.java | 12 ++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuDialog.java b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuDialog.java index 038e307f0..a4d045392 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuDialog.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuDialog.java @@ -50,6 +50,14 @@ public class MenuDialog implements MenuAdapter.OnClickListener { initView(); } + private int getCount() { + return 2; + } + + private float getWidth() { + return 0.4f + (getCount() - 1) * 0.2f; + } + private void initView() { setRecyclerView(); setDialog(); @@ -61,14 +69,14 @@ public class MenuDialog implements MenuAdapter.OnClickListener { binding.recycler.setHasFixedSize(true); binding.recycler.setItemAnimator(null); binding.recycler.addItemDecoration(new SpaceItemDecoration(1, 16)); - binding.recycler.setLayoutManager(new GridLayoutManager(dialog.getContext(), 1)); + binding.recycler.setLayoutManager(new GridLayoutManager(dialog.getContext(), getCount())); binding.recycler.post(() -> binding.recycler.scrollToPosition(0)); } private void setDialog() { WindowManager.LayoutParams params = dialog.getWindow().getAttributes(); - params.width = (int) (ResUtil.getScreenWidth() * 0.4f); + params.width = (int) (ResUtil.getScreenWidth() * getWidth()); dialog.getWindow().setAttributes(params); dialog.getWindow().setDimAmount(0); dialog.show(); diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuKeyDialog.java b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuKeyDialog.java index dff4c9537..6dbbc3983 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuKeyDialog.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/MenuKeyDialog.java @@ -45,6 +45,14 @@ public class MenuKeyDialog implements MenuAdapter.OnClickListener { initView(); } + private int getCount() { + return 3; + } + + private float getWidth() { + return 0.4f + (getCount() - 1) * 0.2f; + } + private void initView() { setRecyclerView(); setDialog(); @@ -55,14 +63,14 @@ public class MenuKeyDialog implements MenuAdapter.OnClickListener { binding.recycler.setHasFixedSize(true); binding.recycler.setItemAnimator(null); binding.recycler.addItemDecoration(new SpaceItemDecoration(1, 16)); - binding.recycler.setLayoutManager(new GridLayoutManager(dialog.getContext(), 1)); + binding.recycler.setLayoutManager(new GridLayoutManager(dialog.getContext(), getCount())); binding.recycler.post(() -> binding.recycler.scrollToPosition(Setting.getHomeMenuKey())); } private void setDialog() { WindowManager.LayoutParams params = dialog.getWindow().getAttributes(); - params.width = (int) (ResUtil.getScreenWidth() * 0.4f); + params.width = (int) (ResUtil.getScreenWidth() * getWidth()); dialog.getWindow().setAttributes(params); dialog.getWindow().setDimAmount(0); dialog.show();