android中DatePicker和TimePicker的使用方法详解







本文以实例讲述了android中DatePicker和TimePicker的使用方法,具体步骤如下:
下面是实现具体功能的代码,其中main.xml代码为:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<? xml version = "1.0" encoding = "utf-8" ?>
< LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
   android:layout_width = "fill_parent"
   android:layout_height = "fill_parent"
   android:orientation = "vertical" >
  
   < TextView
     android:id = "@+id/textView1"
     android:layout_width = "wrap_content"
     android:layout_height = "wrap_content"
     android:text = "请选择购买本书的具体时间" />
  
   < DatePicker
     android:id = "@+id/datePicker"
     android:layout_width = "wrap_content"
     android:layout_height = "wrap_content"
     android:layout_gravity = "center_horizontal" />
  
   < TimePicker
     android:id = "@+id/timePicker"
     android:layout_width = "wrap_content"
     android:layout_height = "wrap_content"
     android:layout_gravity = "center_horizontal" />
  
   < EditText
     android:id = "@+id/show"
     android:layout_width = "wrap_content"
     android:layout_height = "wrap_content"
     android:cursorVisible = "false"
     android:editable = "false" />
  
</ LinearLayout >

java代码为:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
public class AndroidDemo5Activity extends Activity {
  
  // 记录当前的时间
  private int year;
  private int month;
  private int day;
  private int hour;
  private int minute;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super .onCreate(savedInstanceState);
  setContentView(R.layout.main);
  DatePicker date = (DatePicker) findViewById(R.id.datePicker);
  TimePicker time = (TimePicker) findViewById(R.id.timePicker);
  // 或许当前的年月日,小时,分钟
  Calendar ca = Calendar.getInstance();
  year = ca.get(Calendar.YEAR);
  month = ca.get(Calendar.MONTH);
  day = ca.get(Calendar.DAY_OF_MONTH);
  hour = ca.get(Calendar.HOUR);
  minute = ca.get(Calendar.MINUTE);
  
  // 初始化DatePicker
  date.init(year, month, day, new OnDateChangedListener() {
  
   @Override
   public void onDateChanged(DatePicker arg0, int year, int month,
    int day) {
   AndroidDemo5Activity. this .year = year;
   AndroidDemo5Activity. this .month = month;
   AndroidDemo5Activity. this .day = day;
   // 显示当前时间和日期
   showDate(year, month, day, hour, minute);
   }
  
  });
  
  // 为TimerPicker指定事件监听器
  time.setOnTimeChangedListener( new OnTimeChangedListener() {
  
   @Override
   public void onTimeChanged(TimePicker arg0, int hour, int minute) {
   AndroidDemo5Activity. this .hour = hour;
   AndroidDemo5Activity. this .minute = minute;
   }
  });
  }
  
  protected void showDate( int year2, int month2, int day2, int hour2,
   int minute2) {
  EditText text = (EditText) findViewById(R.id.show);
  text.setText( "您的购买时间为:" + year2 + "年" + month2 + "月" + day2 + "日"
   + hour2 + "时" + minute2 + "分" );
  
  }
}

运行效果如下图所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值