项目中,用DialogFragment提示对话框时,公司UI非得把对话框宽度充满屏幕并在屏幕底部,折腾了半天才搞定。在DialogFragment都是默认有一定的padding,但是在API里并没有设置方法。查了半天资料都是AlerDialog设置宽度充满屏幕,DialogFragment的寥寥无几,解决之余记录下来。如果碰到同样的问题,可以参考。
1.重写onCreate方法设置Fragment的styled为DialogFragment.STYLE_NO_FRAME。据官方文档介绍,此样式不画任何框架,;通过onCreateView(LayoutInflater,ViewGroup)返回完全负责绘制对话框的视图层。DialogFragment的Theme,则根据需求自己定义
<span style="font-size:14px;">setStyle(DialogFragment.STYLE_NO_FRAME, android.R.style.Theme_Holo_Light);</span>
2.重写onCreateView,创建Dialog。根据我多次试验,不要重写onCreateDialog来创建Dialog.如果使用此方法,Dialog的显示并不能够按照我们的意图显示。使用AlertDialog创建的Dialog,是浮动在Fragment的上方,就算后续