AlertDialog与DialogFragment
1.AlertDialog
作用:简单的弹出框实现
创建方法:
AlertDialog alert = new AlertDialog.Builder();
使用:
new AlertDialog.Builder(getActivity()) .setView(v) //创建AlertDialog的视图 .setTitle(R.string.setDate) //标题 .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } })// 确定按钮 .setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { })// 取消按钮 .create(); //需要用create()才能算完成创建。
2.DialogFragment
1、 概述
DialogFragment在android 3.0时被引入。是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。
在DialogFragment产生之前,我们创建对话框:一般采用AlertDialog和Dialog。注:官方不推荐直接使用Dialog创建对话框。
2、 好处与用法
使用DialogFragment来管理对话框,当旋转屏幕和按下后退键时可以更好的管理其声明周期,它和Fragment有着基本一致的声明周期。且DialogFragment也允许开发者把Dialog作为内嵌的组件进行重用,类似Fragment(可以在大屏幕和小屏幕显示出不同的效果)。上面会通过例子展示这些好处~
使用DialogFragment至少需要实现onCreateView或者onCreateDIalog方法。onCreateView即使用定义的xml布局文件展示Dialog。onCreateDialog即利用AlertDialog或者Dialog创建出Dialog。
3.使用
1、自制dialog onCreateView()方法
2、使用android自带的dialog onCreateDialog()方法
3、调用 diaFragment.show(FragmentManager fm,String Key); 将该Fragment加入Fragment队列。