После обновления до предыдущей версии Navigation 2.2.0-beta01 lint выдает предупреждение о замене <fragment>
тега на FragmentContainerView
.
Однако замена одного тега, по-видимому, предотвращает раздувание графика навигации.
Согласно 2.2.0-alpha01 , FragmentContainerView
используется внутри страны. Должны ли мы игнорировать предупреждение Lint?
activity_main.xml
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Lint warning: "Replace the <fragment> tag with FragmentContainerView. -->
<fragment
android:id="@+id/nav_host_main"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/nav_graph_main"/>
<!-- other elements -->
</androidx.constraintlayout.widget.ConstraintLayout>
android
android-layout
nearlySane
источник
источник
FragmentContainerView
?FragmentContainerView
и в любой другой компоновке контейнера. Различия описаны в документации FCV, указанной выше. По сути, FCV должен заставить переходы работать лучше, чем вы ожидаете. Или Jetpack Navigation зависит от фрагментов. Если фрагменты повреждены, вы получаете новую библиотеку фиксированных фрагментов или ждете новую версию навигации, которая зависит от новых фиксированных фрагментов.Ответы:
Важный! Есть известные проблемы с разными версиями
FragmentContainerView
. Смотрите журнал изменений перед использованием. Прочитайте исправления ошибок и используйте последнюю версию библиотеки.На данный момент вы также должны объявить зависимость от Fragment 1.2.0-beta02, поскольку он содержит исправление для этого варианта использования.
Источник: https://developer.android.com/jetpack/androidx/releases/fragment#1.2.0-beta02
источник
NavigationBasicSample обновлен до 2.2.0-alpha01 , но по - прежнему с помощью
fragment
тега. NavigationAdvancedSample показывает использованиеFragmentContainerView
, но нав граф надувается в коде (они имеют несколько различных графиков) и соответствующий фрагмент хоста добавляется кFragmentContainerView
. Поэтому я бы сказал, что в настоящее время мы должны игнорировать предупреждение, если мы хотим автоматическую инфляцию.источник
Fragment
зависимости заботится о предупреждении lint.