android顶部导航栏navigation具体代码
时间: 2023-10-03 11:10:09 浏览: 163
Android 中的顶部导航栏通常使用 Toolbar 和 NavigationView 组件来实现。
以下是一个简单的代码示例:
在布局文件中添加 Toolbar 和 NavigationView 组件:
```
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/nav_header"
app:menu="@menu/nav_menu" />
```
在 Activity 中设置 Toolbar 和 NavigationView:
```
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
DrawerLayout drawer = findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
```
其中,setSupportActionBar() 方法将 Toolbar 添加到 Activity 中,ActionBarDrawerToggle 用于实现抽屉菜单的动画效果,setNavigationItemSelectedListener() 方法设置 NavigationView 的点击事件。
通过在 menu 文件夹中创建 nav_menu.xml 文件,可以为 NavigationView 添加菜单项:
```
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_home"
android:title="Home" />
<item
android:id="@+id/nav_gallery"
android:icon="@drawable/ic_gallery"
android:title="Gallery" />
<item
android:id="@+id/nav_slideshow"
android:icon="@drawable/ic_slideshow"
android:title="Slideshow" />
</group>
</menu>
```
这样就可以实现一个简单的顶部导航栏了。
阅读全文