Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在导航体系结构中导航抽屉头操作的任何目的地_Android_Android Studio_Navigation Drawer_Navigation Architecture - Fatal编程技术网

Android 如何在导航体系结构中导航抽屉头操作的任何目的地

Android 如何在导航体系结构中导航抽屉头操作的任何目的地,android,android-studio,navigation-drawer,navigation-architecture,Android,Android Studio,Navigation Drawer,Navigation Architecture,任何人请解释,如何定义抽屉标题布局导航架构中的操作 现在,我需要设置抽屉标题的点击,我将其设置为如下: headerOfNavDrawer.setOnClickListener{ //Here I want to navigate to editProfileFragment //But For navigation I need an action in nav arch graph. //Where to put action?? } 你需要两样东西: 对导航控制

任何人请解释,如何定义抽屉标题布局导航架构中的操作

现在,我需要设置抽屉标题的点击,我将其设置为如下:

headerOfNavDrawer.setOnClickListener{
    //Here I want to navigate to editProfileFragment
    //But For navigation I need an action in nav arch graph.
    //Where to put action??
}

你需要两样东西:

  • 导航控制器的引用
  • 根据,您可以使用
    findNavController(R.id.your_nav_host_fragment)
    其中
    R.id.nav_host_fragment
    是您在活动布局中放置在
    NavHostFragment
    上的
    android:id

  • 转到编辑配置文件片段的操作
  • 为此,导航允许您设置一个从图形中的每个目的地都可用的操作。这是从活动提供的UI触发操作的正确方法

    <navigation xmlns:app="http://schemas.android.com/apk/res-auto"
            xmlns:tools="http://schemas.android.com/tools"
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/main_nav"
            app:startDestination="@id/mainFragment">
    
      ...
    
      <action android:id="@+id/action_global_editProfileFragment"
          app:destination="@id/editProfileFragment"/>
    
    </navigation>
    

    你需要两样东西:

  • 导航控制器的引用
  • 根据,您可以使用
    findNavController(R.id.your_nav_host_fragment)
    其中
    R.id.nav_host_fragment
    是您在活动布局中放置在
    NavHostFragment
    上的
    android:id

  • 转到编辑配置文件片段的操作
  • 为此,导航允许您设置一个从图形中的每个目的地都可用的操作。这是从活动提供的UI触发操作的正确方法

    <navigation xmlns:app="http://schemas.android.com/apk/res-auto"
            xmlns:tools="http://schemas.android.com/tools"
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/main_nav"
            app:startDestination="@id/mainFragment">
    
      ...
    
      <action android:id="@+id/action_global_editProfileFragment"
          app:destination="@id/editProfileFragment"/>
    
    </navigation>
    

    我已经完成了抽屉的全部安装。问题是,如何在抽屉的标题布局中导航操作以启动片段。我已经完成了抽屉的完整设置。问题是,如何在抽屉的标题布局中导航操作以启动片段。感谢您的详细回答!我使用
    navController.navigate(resId)
    解决了这个问题,resId可以是导航图中的操作Id或目标Id。我通过
    NavController.java
    class->
    navigate(@idresintresid)
    方法解决了这个问题。它说param包含一个操作id或目标id,用于导航到DestinationTanks以获取详细答案!我使用
    navController.navigate(resId)
    解决了这个问题,resId可以是导航图中的操作Id或目标Id。我通过
    NavController.java
    class->
    navigate(@idresintresid)
    方法解决了这个问题。它表示param resId是一个操作id或目标id,用于导航到目标