一、DialogFragment是Android针对一些常用场景,对Fragment进行的一次封装。
建立一个类继承DialogFragment,创建一个方法,该方法返回Fragment自身,并且保存住外界传入的类型,
public static MyDialogFragment getInstance(int type){
MyDialogFragment f1=new MyDialogFragment ();
Bundle bundle=new Bundle()'
bundler.putInt("Dialog_Type",type);
f1.setArgument(bundler);
return f1;
}
//在onCreateDialog中写入自己的业务逻辑,当前要实现的是根据外部传入的类型,创建不同的Fragment
Dialog onCreateDialog(Bundle saveInstance){
Dialog dialog=null;
int dialogType=
getArguments().getInt("Dialog_Type")//拿到通过getInstance方法保存在自身中的值
switch(dialogType){
case XX:
return new AlertDialog()......
break;
}
return dialog;
}
在Activity中调用
MyFragment myFragment=MyFragment.getInstance();
if(myFragment!=null){
myFragment.show(getFragmentManager(),tag);
}
本文详细介绍了如何通过自定义DialogFragment,利用setArgument方法传递参数,根据参数的不同创建不同类型的Fragment实例,并展示在Activity中如何调用和显示这些Fragment。重点在于动态创建和展示Fragment,实现灵活的UI交互。

被折叠的 条评论
为什么被折叠?



