呼叫导航图标点击工具栏(android)

呼叫导航图标点击工具栏(android),android,call,onclicklistener,toolbar,android-toolbar,Android,Call,Onclicklistener,Toolbar,Android Toolbar,我的代码如下: setSupportActionBar(toolbar); toolbar.setNavigationOnClickListener(onClickListener); 和XML: <com.google.android.material.appbar.AppBarLayout android:id="@+id/appBarLayout" android:layout_width="match_parent" android

我的代码如下:

setSupportActionBar(toolbar);
toolbar.setNavigationOnClickListener(onClickListener);
和XML:

<com.google.android.material.appbar.AppBarLayout
        android:id="@+id/appBarLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:elevation="0dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <androidx.appcompat.widget.Toolbar
            android:id="@+id/app_bar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:paddingStart="0dp"
            android:paddingEnd="12dp"
            app:contentInsetStart="0dp"
            app:navigationIcon="@drawable/ic_menu_black_24dp"
            app:title="@string/app_name" />
    </com.google.android.material.appbar.AppBarLayout>

我想调用工具栏上的导航图标,但我找不到这样做的方法。
我无法调用onClick Listener(null),因为我更改了onClick中的图标。

请尝试用图标索引替换“number”。(可能是1-2-3-4等)


您可以使用setNavigationOnClickListener{}进行此操作

// I used private function here, you don't need to.
private fun onBackArrowPressed() {
    // when user clicked the navigation icon (here is back arrow)
    binding.toolbar.setNavigationOnClickListener {
        // find the nav controller and pop backstack
        findNavController().popBackStack()
    }
}
试试这个

Toolbar toolbar;

toolbar = findViewById(R.id.toolbar);

setSupportActionBar(toolbar);

@Override
public boolean onSupportNavigateUp() {
    onBackPressed();
    return true;
}

请在答案周围添加一些上下文/解释
Toolbar toolbar;

toolbar = findViewById(R.id.toolbar);

setSupportActionBar(toolbar);

@Override
public boolean onSupportNavigateUp() {
    onBackPressed();
    return true;
}