Что такое пункт назначения верхнего уровня в Android?

Я работаю в Android Studio с использованием Java. Я хочу реализовать панель навигации (те, которые смахивают слева направо) со значком гамбургера всегда сверху. Но есть некоторая проблема с «местом назначения верхнего уровня», без которой значок гамбургера не отображается. Одно из решений, которое я нашел, заключалось в том, чтобы сделать это действие моим действием Launcher, но я этого не хочу.

Может кто-нибудь, пожалуйста, объясните мне, что означает эта фраза "Пункт назначения верхнего уровня" и возможное решение моей проблемы с навигационным ящиком !!

Это мой макет навигации

<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:layout_width="match_parent"
    android:id="@+id/drawer_layout"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:visibility="visible"
    tools:context=".Main_Screen"
    tools:openDrawer="start">

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

    <com.google.android.material.navigation.NavigationView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:id="@+id/nav_view"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:menu="@menu/drawer_menu"
        app:headerLayout="@layout/drawer_header"
        />


</androidx.drawerlayout.widget.DrawerLayout>

это включенная панель приложений

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical">

    <com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        style="@style/Widget.MaterialComponents.AppBarLayout.Primary">

        <androidx.appcompat.widget.Toolbar
            android:layout_width="match_parent"
            android:layout_height="?actionBarSize"
            android:id="@+id/toolbar"
            app:contentInsetStartWithNavigation="0dp" />
    </com.google.android.material.appbar.AppBarLayout>

</LinearLayout>

person newbie100    schedule 04.04.2020    source источник
comment
Вам лучше показать свою ключевую часть кодов здесь. В противном случае никто не сможет вам помочь.   -  person wang willway    schedule 04.04.2020
comment
@wangwillway Что-нибудь еще я могу добавить?   -  person newbie100    schedule 04.04.2020
comment
Когда ящик открывается, вы не видите значок гамбургера. И вы ожидаете, что когда ящик откроется, вы все равно увидите значок гамбургера. Это твоя проблема?   -  person wang willway    schedule 04.04.2020
comment
Нет, я не могу видеть гамбургер в действии, если не сделаю его своим действием для запуска. Я могу получить доступ к ящику, проведя пальцем вправо, но я хочу, чтобы значок гамбургера по-прежнему отображался, не выполняя действие ящика в качестве средства запуска. По сути, мое приложение должно открываться на странице входа, которая затем переводит вас в действие с этим ящиком. Так как моя активность входа - это моя пусковая установка, я не могу получить значок гамбургера.   -  person newbie100    schedule 04.04.2020


Ответы (1)


Я создал действие с именем LoginActivity, где я просто поместил кнопку, и создал действие с именем MainActivity, в которое я поместил ящик. Нажимая на кнопку, я запускаю MainActivity.

Фактически, я не возвращался к проблеме, о которой вы сказали выше.

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

Шаг следующий: щелкните правой кнопкой мыши имя пакета -> Создать -> Действие -> Действия с навигационным ящиком.

person wang willway    schedule 04.04.2020