From a89b1f014d0decfafcb67944b4ae08cfbfbc80b4 Mon Sep 17 00:00:00 2001 From: SuperMonster003 Date: Fri, 9 May 2025 17:16:17 +0800 Subject: [PATCH] =?UTF-8?q?6.6.3=20-=20Alpha2=20-=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=B8=BB=E9=A1=B5=E6=8A=BD=E5=B1=89=E5=9C=A8=E6=A8=AA=E5=90=91?= =?UTF-8?q?=E5=B1=8F=E5=B9=95=E6=88=96=E8=B6=85=E5=AE=BD=E5=B1=8F=E5=B9=95?= =?UTF-8?q?=E7=9A=84=E5=AE=BD=E5=BA=A6=E9=80=82=E5=BA=94=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .changelog/lang_zh-Hans.json | 1 + .../autojs/ui/main/drawer/DrawerFragment.kt | 12 ++ app/src/main/res/layout/fragment_drawer.xml | 178 +++++++++--------- 3 files changed, 103 insertions(+), 88 deletions(-) diff --git a/.changelog/lang_zh-Hans.json b/.changelog/lang_zh-Hans.json index 3fd94b63..536544be 100644 --- a/.changelog/lang_zh-Hans.json +++ b/.changelog/lang_zh-Hans.json @@ -20,6 +20,7 @@ "README.md 中部分语言日期格式不正确的问题" ], "improvement": [ + "主页抽屉在横向屏幕或超宽屏幕的宽度适应性", "关于应用与开发者页面增加水平布局及小屏布局适配", "文件管理器浮动按钮展开后点击其他区域可自动隐藏", "打包单文件时自动读取并勾选已安装应用的声明权限 _[`issue #362`](http://issues.autojs6.com/362)_", diff --git a/app/src/main/java/org/autojs/autojs/ui/main/drawer/DrawerFragment.kt b/app/src/main/java/org/autojs/autojs/ui/main/drawer/DrawerFragment.kt index 04ea353f..639418e4 100644 --- a/app/src/main/java/org/autojs/autojs/ui/main/drawer/DrawerFragment.kt +++ b/app/src/main/java/org/autojs/autojs/ui/main/drawer/DrawerFragment.kt @@ -38,6 +38,7 @@ import org.autojs.autojs.ui.fragment.BindingDelegates.viewBinding import org.autojs.autojs.ui.main.MainActivity import org.autojs.autojs.ui.settings.AboutActivity import org.autojs.autojs.ui.settings.PreferencesActivity +import org.autojs.autojs.util.DisplayUtils import org.autojs.autojs.util.NetworkUtils import org.autojs.autojs.util.ViewUtils import org.autojs.autojs.util.ViewUtils.MODE @@ -47,6 +48,7 @@ import org.autojs.autojs6.databinding.FragmentDrawerBinding import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import java.lang.ref.WeakReference +import kotlin.math.roundToInt /** * Created by Stardust on Jan 30, 2017. @@ -390,11 +392,21 @@ open class DrawerFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) mDrawerMenu = binding.drawerMenu + configureDrawerWidth() initMenuItems() initMenuItemStates() setupListeners() } + private fun configureDrawerWidth() { + val screenWidthDp = resources.configuration.screenWidthDp + val targetWidthPx = 288f.coerceIn( + screenWidthDp * 0.4f, + screenWidthDp * 0.9f, + ).let { DisplayUtils.dpToPx(it) }.roundToInt() + binding.drawerMenuContainer.layoutParams.width = targetWidthPx + } + private fun setupListeners() { binding.settings.setOnClickListener { view -> startActivity( diff --git a/app/src/main/res/layout/fragment_drawer.xml b/app/src/main/res/layout/fragment_drawer.xml index da7556af..b58bcb56 100644 --- a/app/src/main/res/layout/fragment_drawer.xml +++ b/app/src/main/res/layout/fragment_drawer.xml @@ -1,119 +1,121 @@ - + + android:id="@+id/drawer_menu" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="?android:divider" /> + android:layout_width="match_parent" + android:layout_height="41dp" + android:layout_gravity="center_horizontal" + android:baselineAligned="false"> + android:id="@+id/settings" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="?selectableItemBackground" + android:gravity="center" + android:orientation="horizontal"> + android:layout_width="16dp" + android:layout_height="16dp" + android:layout_gravity="center" + android:layout_marginEnd="10dp" + android:src="@drawable/ic_ali_settings" + app:tint="?android:textColorPrimary" + tools:ignore="ContentDescription" /> + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:layout_marginEnd="4dp" + android:gravity="center" + android:text="@string/text_settings" + android:textColor="?android:textColorPrimary" + android:textSize="15sp" /> + android:id="@+id/restart" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="?selectableItemBackground" + android:gravity="center" + android:orientation="horizontal"> + android:layout_width="16dp" + android:layout_height="16dp" + android:layout_gravity="center" + android:layout_marginEnd="10dp" + android:src="@drawable/ic_refresh_white_24dp" + app:tint="?android:textColorPrimary" + tools:ignore="ContentDescription" /> + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:layout_marginEnd="4dp" + android:gravity="center" + android:text="@string/text_restart_app" + android:textColor="?android:textColorPrimary" + android:textSize="15sp" /> + android:id="@+id/exit" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="?selectableItemBackground" + android:gravity="center" + android:orientation="horizontal"> + android:layout_width="16dp" + android:layout_height="16dp" + android:layout_gravity="center" + android:layout_marginEnd="10dp" + android:src="@drawable/ic_ali_exit" + app:tint="?android:textColorPrimary" + tools:ignore="ContentDescription" /> + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:layout_marginEnd="4dp" + android:textColor="?android:textColorPrimary" + android:gravity="center" + android:text="@string/text_exit" + android:textSize="15sp" />