我试图找到一种以编程方式关闭Android Time Picker的解决方法,因为它不支持隐藏功能,并且只有当用户点击Cancel
,Ok
或窗口小部件外部的某个位置时才能关闭它。是否可以通过文本找到按钮Cancel
并以编程方式单击它?
最佳答案
您无需按文本查找“取消”按钮。如果使用的是DatePickerDialog或TimePickerDialog,则这些类将扩展AlertDialog类,因此您可以像这样简单地使用dialog.getButton函数:
DatePickerDialog dialog = new DatePickerDialog(this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
}
});
Button cancelButton = dialog.getButton(DialogInterface.BUTTON_NEUTRAL);
cancelButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// do whatever you want here
}
});
// displays the DatePickerDialog
dialog.show();