Làm cách nào để tắt nút OK/Hủy của DialogFragment khi nó được tạo bằng cách sử dụng AlertDialog? tôi đã cố gắng gọi myAlertDialogFragment.getDialog() nhưng nó luôn luôn quay trở lại dù chỉ một lần vô đoạn được hiển thịAndroid: tắt các nút OK/Hủy DialogFragment
public static class MyAlertDialogFragment extends DialogFragment {
public static MyAlertDialogFragment newInstance(int title) {
MyAlertDialogFragment frag = new MyAlertDialogFragment();
Bundle args = new Bundle();
args.putInt("title", title);
frag.setArguments(args);
return frag;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
int title = getArguments().getInt("title");
return new AlertDialog.Builder(getActivity())
.setIcon(R.drawable.alert_dialog_icon)
.setTitle(title)
.setPositiveButton(R.string.alert_dialog_ok,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
((FragmentAlertDialog)getActivity()).doPositiveClick();
}
}
)
.setNegativeButton(R.string.alert_dialog_cancel,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
((FragmentAlertDialog)getActivity()).doNegativeClick();
}
}
)
.create();
}
}
Tôi biết tôi có thể để nó bằng cách thổi phồng một cách bố trí có chứa cả một hủy và một nút ok, nhưng tôi khá sử dụng giải pháp AlertDialog nếu có thể
Tôi đã thử nhưng không hoạt động vì alert.getButton (AlertDialog.BUTTON_NEGATIVE); sẽ trả về null khi được gọi trước alert.show() Vì vậy, tôi không biết phải gọi nó ở đâu ... – user1026605
Nó thực hiện điều đó, có (và cá nhân tôi thấy nó thực sự gây phiền nhiễu). Những gì bạn muốn làm là thực hiện cuộc gọi 'setEnabled()' ở một nơi nào đó sau trong vòng đời, có thể là sau 'onResume()'. – Delyan