android开发_TimePicker控件

新建项目:

1 New Android Project->
2 Project name:HelloSpinner
3 Build Target:Android 2.2
4 Application name:HelloSpinner
5 Package name:com.b510
6 Create Activity:MainActivity
7 Min SDK Version:9
8 Finish

运行效果:

1 如果:    return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute,
2                     false);

代码部分:

MainActivity.java

 1 package com.b510;
 2 
 3 import java.util.Calendar;
 4 
 5 import android.app.Activity;
 6 import android.app.Dialog;
 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.TextView;
13 import android.widget.TimePicker;
14 
15 public class HelloTimePicker extends Activity {
16     /* 显示时间信息 */
17     private TextView tvTimePickerDisplay;
18     /* 设置时间按钮 */
19     private Button btnTimePicker;
20     /* 小时 */
21     private int mHour;
22     /* 分钟 */
23     private int mMinute;
24     /* 标识 dialog的id */
25     static final int TIME_DIALOG_ID = 0;
26 
27     /** Called when the activity is first created. */
28     @Override
29     public void onCreate(Bundle savedInstanceState) {
30         super.onCreate(savedInstanceState);
31         setContentView(R.layout.main);
32         
33         this.tvTimePickerDisplay = (TextView) this
34                 .findViewById(R.id.tv_timepicker_display);
35         this.btnTimePicker = (Button) findViewById(R.id.btn_timepicker);
36         btnTimePicker.setOnClickListener(listener);
37 
38         // get the current time
39         final Calendar c = Calendar.getInstance();
40         mHour = c.get(Calendar.HOUR_OF_DAY);
41         mMinute = c.get(Calendar.MINUTE);
42 
43         // display the current date
44         updateDisplay();
45     }
46 
47     private OnClickListener listener = new OnClickListener() {
48         @Override
49         public void onClick(View v) {
50             showDialog(TIME_DIALOG_ID);
51         }
52     };
53 
54     // updates the time we display in the TextView
55     private void updateDisplay() {
56         tvTimePickerDisplay.setText(new StringBuilder().append(pad(mHour)).append(":")
57                 .append(pad(mMinute)));
58     }
59 
60     private static String pad(int c) {
61         if (c >= 10)
62             return String.valueOf(c);
63         else
64             return "0" + String.valueOf(c);
65     }
66 
67     // the callback received when the user "sets" the time in the dialog
68     private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() {
69         public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
70             mHour = hourOfDay;
71             mMinute = minute;
72             updateDisplay();
73         }
74     };
75 
76     @Override
77     protected Dialog onCreateDialog(int id) {
78         switch (id) {
79         case TIME_DIALOG_ID:
80             return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute,
81                     true);
82         }
83         return null;
84     }
85 }

main.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:orientation="vertical"
 4     android:layout_width="fill_parent"
 5     android:layout_height="fill_parent"
 6     >
 7     <TextView  
 8         android:id="@+id/tv_timepicker_display"
 9         android:layout_width="fill_parent" 
10         android:layout_height="wrap_content" 
11         />
12      <Button
13          android:id="@+id/btn_timepicker"
14          android:layout_width="fill_parent"
15          android:layout_height="wrap_content"
16          android:text="Change the time"
17      />
18 </LinearLayout>
posted @ 2012-11-19 21:43  Hongten  阅读(3407)  评论(0编辑  收藏  举报
Fork me on GitHub