Не могли бы вы сказать мне, почему автор должен обернуть FrameLayout для фрагмента? - PullRequest
2 голосов
/ 13 января 2020

Код A от activity_main. xml. и это часть примера проекта .

Я не знаю, почему автору нужно обернуть FrameLayout для Фрагмент , после того как я удалю FrameLayout кода A и получение кода B, и код B. работает хорошо.

Не могли бы вы сказать мне, почему автору нужно обернуть FrameLayout для фрагмента?

Код A

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:keepScreenOn="true"
    tools:context=".MainActivity">

    <fragment
        android:id="@+id/fragment_container"
        android:name="androidx.navigation.fragment.NavHostFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:navGraph="@navigation/nav_graph"
        app:defaultNavHost="true"/>

</FrameLayout>

Код B

<?xml version="1.0" encoding="utf-8"?>
<fragment
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/fragment_container"
    android:name="androidx.navigation.fragment.NavHostFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:navGraph="@navigation/nav_graph"
    app:defaultNavHost="true"/>

1 Ответ

4 голосов
/ 16 января 2020

Не могли бы вы сказать мне, почему автор должен обернуть FrameLayout для фрагмента?

Что FrameLayout не нужно. Возможно, что FrameLayout изначально был там по другим причинам (например, изменяя содержимое с помощью FragmentTransaction) и никогда не был удален.

...