相应的知识:
布局有DatePicker和TimePicker
和可视的txetview
TimePicker 是直接实现
DatePicker 是以Init()方法来指定year,moth,day moth的计算
//获取Calendar对象再用他对象获取时间
calendar=Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month=calendar.get(Calendar.MONTH);
int day=calendar.get(Calendar.DAY_OF_MONTH);
int hour=calendar.get(Calendar.HOUR_OF_DAY);
int minute=calendar.get(Calendar.MINUTE);
//为DatePicker 初始化日期
date_picker.init(year, month, day, new OnDateChangedListener() {
//监听日期的改变
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
//Toast.makeText(MainActivity.this, "现在时间:"+year+"-"+(monthOfYear+1)+"-"+dayOfMonth, 0).show();
tv_date.setText("现在日期:"+year+"-"+(monthOfYear+1)+"-"+dayOfMonth);
}
});
//设置时间为24小时制
time_picker.setIs24HourView(true);
time_picker.setOnTimeChangedListener(new OnTimeChangedListener() {
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
tv_time.setText("现在时间:"+hourOfDay+":"+minute);
}
});
以对话框的形式显示:
package zxx.date_time_picker;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
public class MainActivity extends Activity {
Calendar mcalendar;
TextView date_text;
TextView time_text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 加载控件
Button date_but = (Button) findViewById(R.id.date_button);
Button tiem_but = (Button) findViewById(R.id.time_button);
date_text = (TextView) findViewById(R.id.date);
time_text = (TextView) findViewById(R.id.time);
// 初始化时间
mcalendar = Calendar.getInstance();
}
// button监听
public void doclick(View v) {
if (v.getId() == R.id.date_button) {
showDateDialog();
//Toast.makeText(this, "date_but响应", 0).show();
} else if (v.getId() == R.id.time_button) {
showTimeDialog();
//Toast.makeText(getApplicationContext(), "date_but响应", 0).show();
}
}
public void showDateDialog() {
// DatePickerDialog有个监听;
DatePickerDialog date_Dialog = new DatePickerDialog(MainActivity.this, new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfyear, int dayOfmonth) {
// 月份是从0算起的
date_text.setText("选择d日期:" + year + "-" + (monthOfyear + 1) + "-" + dayOfmonth);
Toast.makeText(getApplicationContext(), "date_but响应", 0).show();
}
}, mcalendar.get(Calendar.YEAR), mcalendar.get(Calendar.MONTH), mcalendar.get(Calendar.DAY_OF_MONTH));
// 一定要show()出来;
date_Dialog.show();
Log.i("********", "" + date_Dialog);
}
public void showTimeDialog() {
TimePickerDialog time_dialog = new TimePickerDialog(this, new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker arg0, int huorofday, int minuteodhuor) {
time_text.setText("选择d时间:" + huorofday + ":" + minuteodhuor);
}
}, mcalendar.get(Calendar.HOUR_OF_DAY), mcalendar.get(Calendar.MINUTE),false);
time_dialog.show();
// is24HourView是时间格式false是12小時true24小时;
}
}