Duo*_*uos 5 android android-fragments
由于底部工作表片段没有显示,我最初认为问题出在我的 Java 代码 \xe2\x80\x94 中,可能是适配器中的设置不正确,使用了错误的片段管理器等 \xe2\x80\x94 而不是 XML 中布局。经过几天的沮丧,我终于找到了罪魁祸首。
\n<androidx.coordinatorlayout.widget.CoordinatorLayout\n android:layout_width="match_parent"\n android:layout_height="match_parent">\n\n <androidx.fragment.app.FragmentContainerView\n android:id="@+id/nav_host_fragment"\n android:layout_width="match_parent"\n android:layout_height="match_parent"\n android:layout_marginBottom="?android:attr/actionBarSize"\n android:name="androidx.navigation.fragment.NavHostFragment"\n app:defaultNavHost="true"\n app:navGraph="@navigation/analytics"\n app:layout_behavior="@string/appbar_scrolling_view_behavior"/>\n\n <androidx.constraintlayout.widget.ConstraintLayout\n android:id="@+id/bottom_sheet"\n android:layout_width="match_parent"\n android:layout_height="match_parent"\n android:background="@color/color_surface"\n android:elevation="@dimen/size_2"\n app:behavior_peekHeight="?android:attr/actionBarSize"\n app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">\n\n <com.google.android.material.tabs.TabLayout\n android:id="@+id/tabs"\n android:layout_width="match_parent"\n android:layout_height="?android:attr/actionBarSize"/>\n\n <androidx.viewpager.widget.ViewPager\n android:id="@+id/pager"\n android:layout_width="match_parent"\n android:layout_height="0dp"\n app:layout_constraintBottom_toBottomOf="parent"\n app:layout_constraintStart_toStartOf="parent"\n app:layout_constraintTop_toBottomOf="@id/tabs"/>\n </androidx.constraintlayout.widget.ConstraintLayout>\n</androidx.coordinatorlayout.widget.CoordinatorLayout>\nRun Code Online (Sandbox Code Playgroud)\n当底部工作表折叠时,其选项卡及其标签可见(在 处peekHeight),我可以点击它们。但是,当底部工作表展开时,选项卡仍然可见,但其片段中没有显示任何内容。我已经确定,如果我注释掉\xe2\x80\x94 ,如果我使用旧视图而不是 \xe2\x80\x94 ,底部工作表将按预期工作,所有选项卡中的所有内容都FragmentContainerView无关紧要fragment正在显示。
发生什么了?
\n小智 0
首先,你的TabLayout需要app:layout_constraintTop_toTopOf="parent"
并使ViewPager高度不是 0dp,例如android:layout_height="match_parent"或500dp .. 类似的东西。
如果这不能解决问题,您可以使用其他布局(例如RelativeLayout或LinearLayout)作为BottomSheet 根。
| 归档时间: |
|
| 查看次数: |
1210 次 |
| 最近记录: |