【发布时间】:2020-03-04 06:22:34
【问题描述】:
我想使用 Jetpack Compose 开发单个 Activity 多片段应用程序。 对于 recyclerView,我们有 Vertical 和 HorizontalScroller。但是,对于片段我应该使用什么。
fun loadFragment(fragment: Fragment) {
val transaction:FragmentTransaction = supportFragmentManager.beginTransaction()
transaction.replace(R.id.f_container, fragment)
transaction.addToBackStack(null)
transaction.commit()
}
在这种情况下,我没有 R.id.f_container,因为我只使用 compose 创建 UI。
<FrameLayout
android:id="@+id/f_container"
android:layout_width="match_parent"
android:layout_height="match_parent"`enter code here`
app:layout_behavior="@string/appbar_scrolling_view_behavior"
app:layout_constraintEnd_toEndOf="parent"
tools:layout_editor_absoluteY="-56dp">
</FrameLayout>
【问题讨论】:
-
片段需要一个
ViewGroup容器。这不太可能改变。因此,如果您想继续使用 Fragment,则需要在适当的位置添加ViewGroup。现在,由于 Compose/view 互操作性非常“正在进行中”,这可能意味着您的片段将需要进入传统布局。 -
@Thaw De Zin 如果您找到了问题的解决方案,请告诉我
标签: android kotlin android-fragments android-jetpack-compose