抬头仰望星空,是否能发现自己的渺小。

伪斜杠青年

人们总是混淆了欲望和理想

BottomSheetDialog最大展开高度问题

这个问题比较简单,网上解决方案也很多,我这里只是记录下我的需求。在DialogFragment初始化dialog时处理。

companion object {
    /**
     * 最大设置弹窗高度 默认展开无折叠情况 根据设计稿
     */    const val PREFERENCE_DIALOG_MAX_HEIGHT = 526f
}

override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
    val dialog = BaseBottomSheetDialogFragment.TideBottomSheetDialog(context!!)
    dialog.setOnShowListener {
        dialog.window?.apply {
            val bottomSheet = decorView.findViewById<View>(R.id.design_bottom_sheet)
            val behavior = BottomSheetBehavior.from(bottomSheet)
            behavior.peekHeight = DisplayUtil.dpToPx(PREFERENCE_DIALOG_MAX_HEIGHT)
            behavior.setState(BottomSheetBehavior.STATE_EXPANDED)
        }
    }
    return dialog
}

就这么多,其他的没什么必要,有人还要监听很多种状态的,就不一样了。


本站由以下主机服务商提供服务支持:

2条评论

  • swithun

    behavior.peekHeight,peekHeight 应该是半展开的高度吧,跟全展开不一样

    • Mosaic-C

      嗯,是半展开高度,毕竟是底部 dialog,全铺满就不必考虑dialog 了。

发表评论