我可以使用
打开我的BottomSheetDialogFragmentval bottomSheet = BottomSheetFragment()
bottomSheet.show(fragmentManager!!, "BottomSheet")
但是它只能打开以显示其内容的一半-我希望它在打开时可以扩展到屏幕的整个高度而不必向上拖动。
我环顾四周,似乎一种方法是将BottomSheetBehavior状态设置为STATE_EXPANDED,但是我无法在Kotlin中找到解决方法。
任何帮助将不胜感激!
答案 0 :(得分:2)
您可以通过将BottomSheetBehavior
状态放在其中来设置状态
onViewCreated
中的BottomSheetDialogFragment
。
dialog.setOnShowListener { dialog ->
val d = dialog as BottomSheetDialog
val bottomSheet = d.findViewById<View>(R.id.design_bottom_sheet) as FrameLayout
val bottomSheetBehavior = BottomSheetBehavior.from(bottomSheet)
bottomSheetBehavior.state = BottomSheetBehavior.STATE_EXPANDED
}
您可能还希望将窥视高度设置为对话框的高度,以防止尝试关闭对话框时将其卡住。
bottomSheetBehavior.peekHeight = bottomSheet.height