日付を変更すると、OnDateSetListener()
呼び出されません。setMinDate(day);
回線すら機能していません。DatePickerDialog
何らかの理由で登録していないと思いますOnDateSetListener()
。しかし、それを理解することはできません。ダイアログとリスナーの両方をグローバルとして宣言しました。
private DatePickerDialog datePicker;
private DatePickerDialog.OnDateSetListener dateListener;
コード :
// Create dialogs for datePicker
private void createDatePicker() {
Calendar calendar = Calendar.getInstance(Locale.getDefault());
int day = calendar.get(Calendar.DAY_OF_MONTH);
int month = calendar.get(Calendar.MONTH);
int year = calendar.get(Calendar.YEAR);
datePicker = new DatePickerDialog(this, dateListener, year, month, day);
datePicker.getDatePicker().setMinDate(day);
dateListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
Log.d(TAG, "Date changed.");
}
};
}
private void setEditTextListeres() {
myEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
Log.d(TAG, "EditText gained focus.");
datePicker.show();
}
}
});
}
リスナーが呼び出されない理由は何ですか? setMinDate() が機能しないのはなぜですか?