현재 사용자가 제출 한 날짜와 시간을 검색하기 위해 날짜와 시간 선택기를 사용하고 선택한 날짜와 시간으로 컨트롤의 텍스트를 설정합니다.맞춤형 날짜 및 시간을 검색하는 우아한 솔루션?
나는 다음과 같은 코드를 사용하고 있습니다 : 위의 코드 블록은 날짜와 시간을 위젯을 불러와 텍스트를 설정 않지만, 지금
new DatePickerDialog(newlog3.this, d, calDT.get(Calendar.YEAR), calDT.get(Calendar.MONTH), calDT.get(Calendar.DAY_OF_MONTH)).show();
new TimePickerDialog(newlog3.this, t, calDT.get(Calendar.HOUR_OF_DAY), calDT.get(Calendar.MINUTE), true).show();
optCustom.setText(fmtDT.format(calDT.getTime()));
를, 코드 블록은 사용자가 이전에 전액 수 있습니다 실행중인 날짜를 선택하십시오 .. 예 : 날짜 상자를 먼저 가져온 다음 시간 상자를 가져온 다음 사용자 상호 작용없이 텍스트를 업데이트합니다. 날짜 선택이 완료 될 때까지 시간 선택기를 실행하기 위해 날짜 위젯을 기다리고 싶습니다. 그리고 시간 위젯이 완료된 후에 만 settext를 실행하고 싶습니다.
어떻게 가능합니까? 아니면 나를 탈출하는 더 우아한 해결책이 있습니까?
편집 : 사전에
DatePickerDialog.OnDateSetListener d=new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
calDT.set(Calendar.YEAR, year);
calDT.set(Calendar.MONTH, monthOfYear);
calDT.set(Calendar.DAY_OF_MONTH, dayOfMonth);
//updateLabel();
}
};
TimePickerDialog.OnTimeSetListener t=new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int hourOfDay,
int minute) {
calDT.set(Calendar.HOUR_OF_DAY, hourOfDay);
calDT.set(Calendar.MINUTE, minute);
//updateLabel();
}
};
감사 DatePickerDialog는 DatePickerDialog.OnDateSetListener와 닫을 때
당신이 코드 샘플을 줄 수 있다고 생각합니까? 내 수업에서 위의 리스너를 사용하고 있지만 대화 닫는 방법을 살펴 보려면 어떻게해야합니까? – kefs
다시 한 번 감사드립니다. 나는 당신의 첫 번째 제안을 기반으로 그것을 알아 내 끝에 내 코드에 동일한 코드가 있지만 내 settext 업데이트되지 않았습니다 (또는 그래서 내가 생각 .. 내가 textview 안보여 설정했다) .. 어쨌든 .. 그것은 .. 지금 일하고있어. 단지 당신이 시간대에 현재 시간/분을 설정하지 않았다는 것을 알았습니다. : p – kefs