Android中DatePickerDialog对话框和TimePickerDialog对话框的使用

来源:互联网 发布:淄博哪里找seo公司 编辑:程序博客网 时间:2024/06/12 01:12

DatePickerDialog对话框和TimePickerDialog对话框比单独的DatePicker组件和TimePicker组件更好用,用法也比较简单,下面通过一个简单实例来演示它们的使用:

Activity:

[java] view plain copy
  1. package com.lovo;  
  2.   
  3. import java.util.Calendar;  
  4.   
  5. import android.app.Activity;  
  6. import android.app.DatePickerDialog;  
  7. import android.app.TimePickerDialog;  
  8. import android.os.Bundle;  
  9. import android.view.View;  
  10. import android.view.View.OnClickListener;  
  11. import android.widget.Button;  
  12. import android.widget.DatePicker;  
  13. import android.widget.TextView;  
  14. import android.widget.TimePicker;  
  15.   
  16. public class MainActivity extends Activity {  
  17.   
  18.     @Override  
  19.     protected void onCreate(Bundle savedInstanceState) {  
  20.         super.onCreate(savedInstanceState);  
  21.         setContentView(R.layout.main);  
  22.         // 获得设置日期按钮  
  23.         Button dateBtn = (Button) findViewById(R.id.btn1);  
  24.         // 获得设置时间按钮  
  25.         Button timeBtn = (Button) findViewById(R.id.btn2);  
  26.         // 为设置日期按钮绑定监听器  
  27.         dateBtn.setOnClickListener(new OnClickListener() {  
  28.   
  29.             @Override  
  30.             public void onClick(View arg0) {  
  31.                 Calendar c = Calendar.getInstance();  
  32.                 // 直接创建一个DatePickerDialog对话框实例,并将它显示出来  
  33.                 new DatePickerDialog(MainActivity.this,  
  34.                 // 绑定监听器  
  35.                         new DatePickerDialog.OnDateSetListener() {  
  36.   
  37.                             @Override  
  38.                             public void onDateSet(DatePicker view, int year,  
  39.                                     int monthOfYear, int dayOfMonth) {  
  40.                                 TextView show = (TextView) findViewById(R.id.txt1);  
  41.                                 show.setText("您选择了:" + year + "年" + monthOfYear  
  42.                                         + "月" + dayOfMonth + "日");  
  43.                             }  
  44.                         }  
  45.                         // 设置初始日期  
  46.                         , c.get(Calendar.YEAR), c.get(Calendar.MONTH), c  
  47.                                 .get(Calendar.DAY_OF_MONTH)).show();  
  48.             }  
  49.         });  
  50.         // 为设置时间按钮绑定监听器  
  51.         timeBtn.setOnClickListener(new OnClickListener() {  
  52.   
  53.             @Override  
  54.             public void onClick(View v) {  
  55.                 Calendar c = Calendar.getInstance();  
  56.                 // 创建一个TimePickerDialog实例,并把它显示出来  
  57.                 new TimePickerDialog(MainActivity.this,  
  58.                 // 绑定监听器  
  59.                         new TimePickerDialog.OnTimeSetListener() {  
  60.   
  61.                             @Override  
  62.                             public void onTimeSet(TimePicker view,  
  63.                                     int hourOfDay, int minute) {  
  64.                                 TextView show = (TextView) findViewById(R.id.txt2);  
  65.                                 show.setText("您选择了:" + hourOfDay + "时" + minute  
  66.                                         + "分");  
  67.                             }  
  68.                         }  
  69.                         // 设置初始时间  
  70.                         , c.get(Calendar.HOUR_OF_DAY), c.get(Calendar.MINUTE),  
  71.                         // true表示采用24小时制  
  72.                         true).show();  
  73.             }  
  74.         });  
  75.     }  
  76. }  


布局XML:

[html] view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:gravity="center"  
  6.     android:orientation="vertical" >  
  7.   
  8.     <Button  
  9.         android:id="@+id/btn1"  
  10.         android:layout_width="wrap_content"  
  11.         android:layout_height="wrap_content"  
  12.         android:text="设置日期" />  
  13.   
  14.     <Button  
  15.         android:id="@+id/btn2"  
  16.         android:layout_width="wrap_content"  
  17.         android:layout_height="wrap_content"  
  18.         android:text="设置时间" />  
  19.   
  20.     <TextView  
  21.         android:id="@+id/txt1"  
  22.         android:layout_width="wrap_content"  
  23.         android:layout_height="wrap_content" />  
  24.   
  25.     <TextView  
  26.         android:id="@+id/txt2"  
  27.         android:layout_width="wrap_content"  
  28.         android:layout_height="wrap_content" />  
  29.   
  30. </LinearLayout>  


附上图片效果:

点击按钮弹出下面对话框,可以选择日期或时间:

设置后的效果:

0 0
原创粉丝点击