【Android(安卓)开发】:UI控件之时间和日期对话框控件的的使用(四)
16lz
2021-01-26
上一讲我们讲解了ProgressDialog的对话框的操作,这一讲我们来讲解一下日期和时间的对话框的操作
2. TimePickerDialog 时间对话框的操作
1. DatePickerDialog 日期对话框的操作
查看 DatePickerDialog 的API文档,它也是继承关系如下所示:DatePickerDialog extends AlertDialog implements DialogInterface.OnClickListener DatePicker.OnDateChangedListener构造方法如下:
public DatePickerDialog (Context context, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth)
Context context:上下文对象 DatePickerDialog.OnDateSetListener callBack 第二个参数表示,当点击改变日期时,会触发这个回调 int year, int monthOfYear, int dayOfMonth 初始化年月日
2. TimePickerDialog 时间对话框的操作
时间对话框与日期对话框的操作类似。
public TimePickerDialog (Context context, TimePickerDialog.OnTimeSetListener callBack, int hourOfDay, int minute, boolean is24HourView)最后一个参数,表示选择二十四小时的形式,或者分为上午/下午的形式 is24HourView Whether this is a 24 hour view, or AM/PM.
3. 程序代码
public class MainActivity extends Activity { private Button button; private Button button2; // 初始化年月日 private int year; private int monthOfYear; private int dayOfMonth; // 初始化时间 private int hourOfDay; private int minute; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initComponent(); // 初始化年月日 Calendar calendar = Calendar.getInstance(); year = calendar.get(Calendar.YEAR); monthOfYear = calendar.get(Calendar.MONTH); dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH); // 初始化时间 hourOfDay = calendar.get(Calendar.HOUR_OF_DAY); minute = calendar.get(Calendar.MINUTE); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub DatePickerDialog datePickerDialog = new DatePickerDialog(MainActivity.this, new OnDateSetListener() { //当选中日期时候会触发这一个效果 @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { // TODO Auto-generated method stub String str = year + "年-" + monthOfYear + "月-" + dayOfMonth + "日"; Toast.makeText(MainActivity.this, str, 3).show(); } }, year, monthOfYear, dayOfMonth); datePickerDialog.show(); } }); button2.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this, new OnTimeSetListener() { @Override public void onTimeSet(TimePicker view, int hourOfDay, int minute) { // TODO Auto-generated method stub String str1 = hourOfDay + "时-" + minute + "分"; Toast.makeText(MainActivity.this, str1, 3).show(); } }, hourOfDay, minute, true); timePickerDialog.show(); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } private void initComponent() { button = (Button) findViewById(R.id.button1); button2 = (Button) findViewById(R.id.button2); }}
4. 执行过程
更多相关文章
- SQLite3 在应用启动时初始化数据
- android 设计模式之单例模式详解
- Android平台中Wifi的初始化
- Android(安卓)Fail to connect to camera service
- android 之 Inflate
- Android实现退出界面弹出提示对话框
- 基于安卓5.0 material design仿ios界面简单计算器
- Android(安卓)UI- 对话框 (AlertDialog & ProgressDialog)
- android 好看的自定义日历