我试图制作一个 DialogFragment,在点击时可以关闭,经过一番搜索后我决定采用此实现:
public class ErrorDialogFragment extends RoboDialogFragment {
private static final String MESSAGE_ARG = "message";
private TextView text;
public ErrorDialogFragment newInstance (String message){
ErrorDialogFragment f = new ErrorDialogFragment();
Bundle args = new Bundle();
args.putString(MESSAGE_ARG, message);
f.setArguments(args);
return f;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.error_dialog_fragment, container, false);
v.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ErrorDialogFragment.this.dismiss();
}
});
text = (TextView) v.findViewById(R.id.error_dialog_text_textView);
text.setText(getArguments().getString(MESSAGE_ARG));
return v;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(DialogFragment.STYLE_NO_TITLE, 0);
}
警报对话框可以包含自定义消息,点击时将被关闭。
您认为实现这一目标的更好方法是什么?
谢谢。
最佳答案
您可以使用 dialog.setCanceledOnTouchOutside(true); 如果您在对话框外触摸,它会关闭对话框。或
试试这个教程 http://iserveandroid.blogspot.com/2010/11/how-to-dismiss-custom-dialog-based-on.html . 希望对您有所帮助..!!
关于android - 单击时关闭 DialogFragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10480330/