DialogFragment 背景有时正常,有时半透明,请问如何解决

我首先采用的办法如下(借鉴了網上大佬的解决方案):

我发现在设置View显隐的时候会导致整个BottomSheetDialog抖动一次,后面重复操作就不会 一时间心里万匹草泥马奔腾而过我开始懷疑这个控件是不是有什么坑,网上一段狂搜也没我这样的问题。于是我开始反思沉下心来思考,我应该对比下正常使用没有问题的找出跟我的操作不一样的地方,而且那个抖动也就一开始创建后弹出抖动一次所以应该是在某个只执行一次的方法里了,于是我的焦點就聚焦与这个重写的onStart()方法里我把里面代码依次分开注释,运行检查,最后问题就出在上面代码那段!目前没时间细究了不过应该昰这个操作在设置view的显隐的时候让控件的整个背景层重绘了吧!


这里附上一份可以解决开启弹窗状态栏变黑的办法

这里附上这个解决思路嘚大佬的链接:
最后如果有的小伙伴还想让BottomSheetDialog背景透明,设置边距高度啥的,可以重写BottomSheetDialog的setContentView(View view)方法然后在这里面进行操作,具体操作很多大佬都有博客介绍下面附上代码:

我要回帖

 

随机推荐