我使用TimePickerDialog
與onTimeSet()
方法。我添加了一個cancel
按鈕和onClickListener
。
我的問題是,當我點擊cancel
按鈕時,onTimeSet()方法被調用。爲什麼?任何方式來解決這個問題?TimePickerDialog:單擊「取消」按鈕調用onTimeSet()方法
// Create timePicker and set listener
timeListener = new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
};
timePicker = new TimePickerDialog(RS_CreateTripActivity.this,
timeListener, hour, min, false);
timePicker.setCanceledOnTouchOutside(false);
timePicker.setCancelable(false);
// Set negative button click listener
timePicker.setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
datePicker.dismiss();
}
});
我試圖通過設置positive
與onClickListener
按鈕,但我不能讓時間由用戶選擇的情況下。如果有人告訴我如何在onClickListener
之內獲得時間,那麼它也能解決我的問題。
它首先進入'onClick'方法,然後'onTimeSet'。因此,使用一個布爾變量來檢查它是否進入了'onClick'方法。它確實做了,然後不要在'onTimeSet'方法中執行任何代碼。 – Geek
請在這裏找到運行的解決方案:https://stackoverflow.com/questions/4724781/timepickerdialog-cancel-button/47043247#47043247 – Deepti