Полностью скрыть кнопку гамбургера в планшетном ПК в планшетном режиме - PullRequest
0 голосов
/ 29 апреля 2020

, как гласит заголовок, я пытаюсь полностью скрыть кнопку гамбургера, когда я нахожусь в планшетном режиме на планшете, но я все еще хочу, чтобы при входе в подменю была стрелка назад, чтобы вернуться домой экран.

Этот фрагмент кода показывает, как я идентифицирую альбомный режим планшета и другую ориентацию

        // check the device type and shows drawer accordingly
    if (isTabletLandscape) {
        drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED)
        drawerLayout.setScrimColor(0x00000000) // set the rest of the screen without shadow as if drawer and the rest were on the same level
    }

, и это работает нормально, но он продолжает показывать мне кнопку гамбургера, которая, если нажать, дает это ошибка:

** java .lang.IllegalArgumentException: не отображается вид ящика с гравитацией LEFT **

, поэтому я думаю, что отключение этой кнопки решит мои проблемы.

Я уже пробовал:

  • toolbar.setnavigationicon(null) и не работает (также с другим изображением того же цвета панели инструментов
  • actionBarDrawerToggle.isDrawerIndicatorEnable = false, и оно не работает
  • actionBarDrawerToggle.setHomeAsUpIndicator(null)
  • supportActionBar?.setDisplayHomeAsUpEnable(false)

, но ни один из них на самом деле не работал.

, если необходимо, это файл. xml, который обрабатывает ящик в режиме большой земли:

<androidx.drawerlayout.widget.DrawerLayout 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/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start"
android:layout_gravity="start"
android:orientation="horizontal">

<include
    layout="@layout/app_bar_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<LinearLayout
    android:id="@+id/nav_container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="start">
        <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" />
</LinearLayout>

...