Нажмите значок навигации, нажмите на панели инструментов (android) - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть код ниже:

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>

Я хочу позвонить, нажмите на значок навигации на панели инструментов, но я не могу найти способ сделать это , Я не могу вызвать onClickListener (null), потому что я меняю значок внутри onClick.

1 Ответ

0 голосов
/ 26 апреля 2020

Пожалуйста, попробуйте это, заменив «номер» на индекс значка. (Это может быть 1-2-3-4 et c.)

    toolbar.getChildAt(number).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            //do whatever you want here
        }
    });
...