使用DialogFragment的坑

在调用show方法的时候:


使用DialogFragment的坑_第1张图片

源码是直接添加,所有快速点击的时候,多次添加会蹦:

报错:java.lang.IllegalStateException: Fragment already added

处理方式是在自己的dialogFragment里面重写show方法:


使用DialogFragment的坑_第2张图片
写在super.show(manager,tag)的上面先执行


还有一个坑:

想要在dialogFragment创建的时候保存context对象,让其他地方调用;但是生命周期方法:

使用DialogFragment的坑_第3张图片
onAttach生命周期方法低版本的只会走过时的方法,所有如果用未过时的方法保存context对象,后面调用context的时候就会报空崩溃;好的处理方式是直接两个方法都写;或者调用getActivity()方法直接获取宿主activity来进行操作。

好像差不多就这些了。

你可能感兴趣的:(使用DialogFragment的坑)