androidの左側に分類機能を実装する方法

Androidで左側のカテゴリ機能を実装するには、RecyclerViewとNavigationViewを使用できます。簡単な例を以下に示します。

  1. レイアウトファイルで、ルートレイアウトとしてDrawerLayoutを追加し、中にNavigationViewを左側のドロワービューとして追加します。
<androidx.drawerlayout.widget.DrawerLayout
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- 主要内容 -->
    <FrameLayout
        android:id="@+id/content_frame"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <!-- 主要内容布局 -->

    </FrameLayout>

    <!-- 左侧分类 -->
    <com.google.android.material.navigation.NavigationView
        android:id="@+id/navigation_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        app:menu="@menu/navigation_menu" />

</androidx.drawerlayout.widget.DrawerLayout>
  1. 「menu」フォルダを作成し、「navigation_menu.xml」というファイルを作成、左にカテゴリが表示されるメニュー項目を定義する
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group android:checkableBehavior="single">
        <item
            android:id="@+id/category1"
            android:icon="@drawable/ic_category1"
            android:title="分类1" />
        <item
            android:id="@+id/category2"
            android:icon="@drawable/ic_category2"
            android:title="分类2" />
        <item
            android:id="@+id/category3"
            android:icon="@drawable/ic_category3"
            android:title="分类3" />
    </group>
</menu>
  1. あなたの Activity で、NavigationView のクリックイベントを設定し、それぞれのカテゴリ項目に応じて対応の処理を行ってください。
NavigationView navigationView = findViewById(R.id.navigation_view);
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
        int id = menuItem.getItemId();
        switch (id) {
            case R.id.category1:
                // 执行分类1的操作
                break;
            case R.id.category2:
                // 执行分类2的操作
                break;
            case R.id.category3:
                // 执行分类3的操作
                break;
        }
        // 关闭DrawerLayout
        DrawerLayout drawerLayout = findViewById(R.id.drawer_layout);
        drawerLayout.closeDrawer(GravityCompat.START);
        return true;
    }
});

上記のステップを通じて、あなたは簡易的な Android 左側分類機能を実装できます。あなたのニーズに基づいて、拡張と修正ができます。

bannerAds