我现在正在学习Kotlin,并且新的默认“导航抽屉活动”的实现方式有所不同。现在,您没有onNavigationItemSelected,只有onCreate()的创建和初始化,然后是onSupportNavigateUp()的创建和初始化,对我而言,这并没有显示click事件的处理位置。
我想知道如何使用这种新的Kotlin Navigation Drawer结构发送一些数据。在主活动中生成的代码是:
<include
layout="@layout/app_bar_main"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<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"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
activity_main.xml文件:
<fragment
android:id="@+id/nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:navGraph="@navigation/mobile_navigation" />
content_main.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<navigation 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:id="@+id/mobile_navigation"
app:startDestination="@+id/nav_done">
<fragment
android:id="@+id/nav_done"
android:name="caiofa.com.task.ui.tasklist.TaskListFragment"
android:label="@string/menu_done"
tools:layout="@layout/fragment_task_list" >
</fragment>
<fragment
android:id="@+id/nav_todo"
android:name="caiofa.com.task.ui.home.HomeFragment"
android:label="@string/menu_todo"
tools:layout="@layout/fragment_home"
/>
<fragment
android:id="@+id/nav_logout"
android:name="caiofa.com.task.ui.slideshow.SlideshowFragment"
android:label="@string/menu_logout"
tools:layout="@layout/fragment_slideshow" />
</navigation>
和mobile_navigation.xml文件:
capacity