所以我创建了一个自定义对话框类,但是当我尝试关闭它时它不会关闭。
以下是关闭对话框的代码部分
public static void CountDownDialog(final Activity activity){
countDownDialog = new Dialog(activity, R.style.dialog);
...
negativeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss_dialog();
}
});
countDownDialog.show();
...
}
该方法应该关闭对话框
private static void dismiss_dialog() {
countDownDialog.dismiss();
}
答案 0 :(得分:0)
我从您的示例中了解到,您实际上并未创建任何自定义对话框类。您正在创建一个普通对话框并将该对话框设置为您班级中的成员但yiu正在使用静态函数。 Yon可以尝试返回对话框,而不是在该类中设置它,然后您将从调用者那里获得对话框实例的引用,并随时调用该实例上的dismiss。
答案 1 :(得分:0)
示例对话框;
public class MyDialogFragment extends DialogFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_sample_dialog, container, false);
Button dismiss = (Button) rootView.findViewById(R.id.dismiss);
getDialog().setTitle(getResources().getString(R.string.app_name));
dismiss.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
}
});
return rootView;
}
}
如何打电话;
FragmentManager fm = getFragmentManager();
MyDialogFragment dialogFragment = new MyDialogFragment();
dialogFragment.show(fm, "");