fix: 使用 ScrollView + LinearLayout 替代 GridLayout
Android Release / release (push) Failing after 31s

This commit is contained in:
CI Bot
2026-06-02 22:45:16 +08:00
parent 7c4e48f3bc
commit d0b42566dc
+393 -383
View File
@@ -1,410 +1,420 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical" android:background="@drawable/bg_gradient"
android:background="@drawable/bg_gradient"> android:fillViewport="true">
<!-- 顶部栏 -->
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="vertical">
android:padding="16dp"
android:gravity="end">
<ImageView <!-- 顶部栏 -->
android:id="@+id/btnMore" <LinearLayout
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/ic_more"
android:background="@drawable/bg_menu_button"
android:padding="8dp"
android:contentDescription="更多"/>
<ImageView
android:id="@+id/btnScan"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/ic_scan"
android:background="@drawable/bg_menu_button"
android:padding="8dp"
android:layout_marginStart="8dp"
android:contentDescription="扫描"/>
</LinearLayout>
<!-- 搜索栏 -->
<LinearLayout
android:id="@+id/searchBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/bg_search"
android:padding="12dp"
android:layout_margin="16dp"
android:gravity="center_vertical">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/ic_search"
android:contentDescription="搜索"/>
<TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/search_hint" android:orientation="horizontal"
android:textColor="#999999" android:padding="16dp"
android:textSize="16sp" android:gravity="end">
android:layout_marginStart="12dp"/>
</LinearLayout>
<!-- 功能网格 -->
<GridLayout
android:id="@+id/functionGrid"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:columnCount="4"
android:padding="16dp">
<!-- 备忘录 -->
<LinearLayout
android:id="@+id/btnMemo"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView <ImageView
android:layout_width="48dp" android:id="@+id/btnMore"
android:layout_height="48dp" android:layout_width="40dp"
android:src="@drawable/ic_memo" android:layout_height="40dp"
android:background="@drawable/bg_function_icon" android:src="@drawable/ic_more"
android:padding="12dp"/> android:background="@drawable/bg_menu_button"
android:padding="8dp"
<TextView android:contentDescription="更多"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/memo"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 二维码 -->
<LinearLayout
android:id="@+id/btnQRCode"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView <ImageView
android:layout_width="48dp" android:id="@+id/btnScan"
android:layout_height="48dp" android:layout_width="40dp"
android:src="@drawable/ic_qrcode" android:layout_height="40dp"
android:background="@drawable/bg_function_icon" android:src="@drawable/ic_scan"
android:padding="12dp"/> android:background="@drawable/bg_menu_button"
android:padding="8dp"
<TextView android:layout_marginStart="8dp"
android:layout_width="wrap_content" android:contentDescription="扫描"/>
android:layout_height="wrap_content"
android:text="@string/qrcode"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout> </LinearLayout>
<!-- 谁在干活 --> <!-- 搜索栏 -->
<LinearLayout <LinearLayout
android:id="@+id/btnWhoWorking" android:id="@+id/searchBar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_star"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/who_working"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- PVE -->
<LinearLayout
android:id="@+id/btnPVE"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_pve"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pve"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 快递 -->
<LinearLayout
android:id="@+id/btnExpress"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_express"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/express"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 纪念日 -->
<LinearLayout
android:id="@+id/btnAnniversary"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_anniversary"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/anniversary"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 记账 -->
<LinearLayout
android:id="@+id/btnAccounting"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_accounting"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/accounting"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 资料 -->
<LinearLayout
android:id="@+id/btnMaterials"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_columnWeight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_materials"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/materials"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
</GridLayout>
<!-- 消息提示 -->
<LinearLayout
android:id="@+id/messageBanner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/bg_message"
android:padding="12dp"
android:layout_margin="16dp"
android:gravity="center_vertical">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/ic_speaker"
android:contentDescription="消息"/>
<TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/message_hint" android:orientation="horizontal"
android:textColor="#666666" android:background="@drawable/bg_search"
android:textSize="14sp" android:padding="12dp"
android:layout_marginStart="12dp"/> android:layout_margin="16dp"
</LinearLayout> android:gravity="center_vertical">
<!-- 博客卡片 -->
<LinearLayout
android:id="@+id/blogCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/bg_card"
android:padding="16dp"
android:layout_margin="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/blog_title"
android:textColor="#333333"
android:textSize="16sp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_articles"
android:textColor="#999999"
android:textSize="14sp"
android:layout_marginTop="8dp"/>
</LinearLayout>
<!-- 底部导航 -->
<LinearLayout
android:id="@+id/bottomNav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@android:color/white"
android:elevation="8dp"
android:layout_marginTop="0dp">
<!-- 首页 -->
<LinearLayout
android:id="@+id/navHome"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView <ImageView
android:layout_width="32dp" android:layout_width="24dp"
android:layout_height="32dp" android:layout_height="24dp"
android:src="@drawable/ic_home_active" android:src="@drawable/ic_search"
android:contentDescription="首页"/> android:contentDescription="搜索"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/search_hint"
android:textColor="#999999"
android:textSize="16sp"
android:layout_marginStart="12dp"/>
</LinearLayout>
<!-- 功能网格 - 第一行 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="8dp">
<LinearLayout
android:id="@+id/btnMemo"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_memo"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/memo"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnQRCode"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_qrcode"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/qrcode"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnWhoWorking"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_star"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/who_working"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnPVE"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_pve"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pve"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
</LinearLayout>
<!-- 功能网格 - 第二行 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="8dp">
<LinearLayout
android:id="@+id/btnExpress"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_express"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/express"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnAnniversary"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_anniversary"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/anniversary"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnAccounting"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_accounting"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/accounting"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/btnMaterials"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_materials"
android:background="@drawable/bg_function_icon"
android:padding="12dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/materials"
android:textColor="@android:color/white"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
</LinearLayout>
<!-- 消息提示 -->
<LinearLayout
android:id="@+id/messageBanner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/bg_message"
android:padding="12dp"
android:layout_margin="16dp"
android:gravity="center_vertical">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/ic_speaker"
android:contentDescription="消息"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/message_hint"
android:textColor="#666666"
android:textSize="14sp"
android:layout_marginStart="12dp"/>
</LinearLayout>
<!-- 博客卡片 -->
<LinearLayout
android:id="@+id/blogCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/bg_card"
android:padding="16dp"
android:layout_margin="16dp">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/home" android:text="@string/blog_title"
android:textColor="#FF4081"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 中间按钮 -->
<LinearLayout
android:id="@+id/navCenter"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center">
<ImageView
android:layout_width="56dp"
android:layout_height="56dp"
android:src="@drawable/ic_center_button"
android:contentDescription="快速操作"
android:layout_marginTop="-16dp"/>
</LinearLayout>
<!-- 我的 -->
<LinearLayout
android:id="@+id/navProfile"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/ic_profile"
android:contentDescription="我的"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/profile"
android:textColor="#333333" android:textColor="#333333"
android:textSize="12sp" android:textSize="16sp"
android:layout_marginTop="4dp"/> android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
</LinearLayout> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_articles"
android:textColor="#999999"
android:textSize="14sp"
android:layout_marginTop="8dp"/>
</LinearLayout>
<!-- 占位空间,把底部导航推到底部 -->
<View
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<!-- 底部导航 -->
<LinearLayout
android:id="@+id/bottomNav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@android:color/white"
android:elevation="8dp">
<!-- 首页 -->
<LinearLayout
android:id="@+id/navHome"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/ic_home_active"
android:contentDescription="首页"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/home"
android:textColor="#FF4081"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
<!-- 中间按钮 -->
<LinearLayout
android:id="@+id/navCenter"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center">
<ImageView
android:layout_width="56dp"
android:layout_height="56dp"
android:src="@drawable/ic_center_button"
android:contentDescription="快速操作"
android:layout_marginTop="-16dp"/>
</LinearLayout>
<!-- 我的 -->
<LinearLayout
android:id="@+id/navProfile"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:padding="8dp">
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/ic_profile"
android:contentDescription="我的"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/profile"
android:textColor="#333333"
android:textSize="12sp"
android:layout_marginTop="4dp"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>