您的位置:首页 > 移动开发 > Android开发

dialogfragment 的使用

2016-05-11 17:13 429 查看
官方推荐使用dialogfragment,而不是直接使用dialog,因为dialogfragment可以更方便的管理生命周期。

public class DialogTest extends DialogFragment {

@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View view = inflater.inflate(R.layout.sdf, null);
builder.setView(view)
// Add action buttons
.setPositiveButton("登录",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
}
}).setNegativeButton("取消", null);
Dialog dialog = builder.create();
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);//不显示标题
return dialog;
}
}

然后只需要在activity中调用即可

DialogTest dialogTest = new DialogTest();
dialogTest.show(getSupportFragmentManager(),"dialog");

show方法赋予fragment一个标签~~

如果不需要有系统提供的按钮的话 可以直接这样

public class DialogTest extends DialogFragment {

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉dialog的标题栏
return inflater.inflate(R.layout.sdf,container,false);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息