从以前的版本更新到Navigation 2.2.0-beta01后,lint会发出警告,要求将<fragment>
标记替换为FragmentContainerView
。
但是,仅更换标签似乎可以防止导航图膨胀。
根据2.2.0-alpha01,FragmentContainerView
在内部使用。我们应该忽略棉绒警告吗?
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>
最佳答案
重要! 不同版本的FragmentContainerView
存在一些已知问题。使用前请参阅changelog。通读错误修复程序,并使用该库的最新版本。
现在,您还应该声明对片段1.2.0-beta02的依赖,因为它包含此用例的修复程序。
implementation "androidx.fragment:fragment:1.2.0-beta02"
资料来源:https://developer.android.com/jetpack/androidx/releases/fragment#1.2.0-beta02
关于android - 将FragmentContainerView与导航组件一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58320487/