Date/TimePickerDialog只是供用户来选择日期时间,对于android系统的系统时间, 日期没有任何影响
他们两个的构造方法非常相似: DatePickerDialog(上下文;DatePickerDialog.OnDateSetListener()监听器;年;月;日)
TimePickerDialog(上下文;TimePickerDialog.OnTimeSetListener()监听器;小时,分钟,是否采用24小时制)
public
class
MainActivity
extends
AppCompatActivity
implements
View.OnClickListener{
private
Button btn_date;
private
Button btn_time;
private
String result =
""
;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bindViews();
}
private
void
bindViews() {
btn_date = (Button) findViewById(R.id.btn_date);
btn_time = (Button) findViewById(R.id.btn_time);
btn_date.setOnClickListener(
this
);
btn_time.setOnClickListener(
this
);
}
@Override
public
void
onClick(View v) {
result =
""
;
switch
(v.getId()){
case
R.id.btn_date:
Calendar cale1 = Calendar.getInstance();
new
DatePickerDialog(MainActivity.
this
,
new
DatePickerDialog.OnDateSetListener() {
@Override
public
void
onDateSet(DatePicker view,
int
year,
int
monthOfYear,
int
dayOfMonth) {
//这里获取到的月份需要加上1哦~
result +=
"你选择的是"
+year+
"年"
+(monthOfYear+
1
)+
"月"
+dayOfMonth+
"日"
;
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
}
}
,cale1.get(Calendar.YEAR)
,cale1.get(Calendar.MONTH)
,cale1.get(Calendar.DAY_OF_MONTH)).show();
break
;
case
R.id.btn_time:
Calendar cale2 = Calendar.getInstance();
new
TimePickerDialog(MainActivity.
this
,
new
TimePickerDialog.OnTimeSetListener() {
@Override
public
void
onTimeSet(TimePicker view,
int
hourOfDay,
int
minute) {
result =
""
;
result +=
"您选择的时间是:"
+hourOfDay+
"时"
+minute+
"分"
;
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
}
}, cale2.get(Calendar.HOUR_OF_DAY), cale2.get(Calendar.MINUTE),
true
).show();
break
;
}
}
}