Android 通用首页代码示例

在 Android 中,使用 NestedScrollView 来包含多个部分,如横向 Banner、GridView 和 RecyclerView,可以通过嵌套不同的布局组件来实现。以下是一个示例布局的 XML 文件,展示如何将这些部分嵌套在 NestedScrollView 内:

xml 复制代码
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fillViewport="true"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context=".MainActivity">

    <!-- 使用垂直线性布局嵌套多个部分 -->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <!-- 横向 Banner(使用水平 RecyclerView) -->
        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/bannerRecyclerView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" />

        <!-- GridView -->
        <GridView
            android:id="@+id/gridView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:numColumns="2"
            android:columnWidth="160dp"
            android:stretchMode="columnWidth"
            android:gravity="center"
            android:verticalSpacing="8dp"
            android:horizontalSpacing="8dp" />

        <!-- RecyclerView -->
        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/recyclerView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
        
        <!-- 其他部分... -->

    </LinearLayout>
</androidx.core.widget.NestedScrollView>

在这个示例布局中:

  1. 使用 NestedScrollView 来创建可滚动的容器。
  2. 使用垂直线性布局 (LinearLayout) 来嵌套多个部分。你可以在线性布局中添加更多的子视图来包含其他部分。
  3. 使用水平的 RecyclerView 来显示横向的 Banner。你需要创建相应的适配器和数据来填充 Banner。
  4. 使用 GridView 来显示网格视图。你可以在代码中设置适配器并提供数据。
  5. 使用 RecyclerView 来显示列表视图。同样,你需要创建适配器和提供数据。

请根据你的实际需求创建适当的适配器和填充数据,以便每个部分显示正确的内容。这个布局示例提供了一种将不同类型的内容嵌套在 NestedScrollView 中的方法,以实现多个部分的滚动。

相关推荐
古法安卓3 小时前
Android-Direct Boot 阶段与 getFilesDir() 路径变更问题深度分析
android·java·android studio
阿巴斯甜3 小时前
Android Studio Detekt 使用
android
杉氧3 小时前
Flutter 跨平台多端适配与 Android/iOS 一键自动化打包发布
android·前端·flutter
Super 含4 小时前
Android 包体积优化(一):APK 到底大在哪里?从 APK 结构到体积分析
android·ide·vscode
Super 含5 小时前
Android 包体积优化(四):深入 ReDex——StripDebugInfo、InterDex 与 DEX 重排
android
安卓与AI研习社5 小时前
主线程明明是空闲的,为什么仍然 ANR?3 个真实 Trace 的证据链复盘
android
恋猫de小郭6 小时前
Dart 3.13 大更新,感觉比 Flutter 更带劲
android·前端·flutter
大锅盖17 小时前
HarmonyOS 6.1.1 ArkWeb:交付门户下载资料前-为什么必须先登记下载代理与来源字段
android·华为·harmonyos
峥嵘life15 小时前
Android16 311Y3 EAP-TLS 网络连接失败分析与修复总结
android·开发语言·人工智能·php
Kapaseker16 小时前
破坏性更新 - 解读 Jetpack Compose 1.12
android·kotlin