android TimePicker

来源:互联网 发布:现在usb属于什么端口 编辑:程序博客网 时间:2024/05/16 05:09

Android中关于日期时间的类有TimePickerDatePicker、TimePickerDialog、DatePickerDialog、Calendar。其中TimePickerDialog、DatePickerDialog是对话框形式。

一、TimePicker

查看一个在24小时或上午/下午模式下一天的时间。

1.重要方法
         setCurrentMinute(Integer currentMinute)设置当前时间的分钟

  getCurrentMinute()获取当前时间的分钟

  setEnabled(boolean enabled)设置当前视图是否可以编辑。

  m_TimePicker.setIs24HourView(true);设置为24小时制显示

  setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener)当时间改变时调用

二、DatePicker

  1.重要方法

  getDayOfMonth():获取当前Day

  getMonth():获取当前月

  getYear()获取当前年

三、TimePickerDialog、DatePickerDialog


  以对话框形式显示日期时间视图

四、Calendar

  日历是设定年度日期对象和一个整数字段之间转换的抽象基类,如,月,日,小时等。


  updateDate(int year, int monthOfYear, int dayOfMonth):更新日期

=========================================

案例定义一个布局文件timepicker.xml

view sourceprint?
01<?xmlversion="1.0"encoding="utf-8"?>
02<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
03    android:layout_width="match_parent"
04    android:layout_height="match_parent"
05    android:orientation="vertical">
06  <TextView   
07      android:id="@+id/timeDisplay"     
08      android:layout_width="wrap_content"    
09      android:layout_height="wrap_content"    
10      android:text=""   />
11  <Button    
12      android:id="@+id/pickTime"   
13      android:layout_width="wrap_content"   
14      android:layout_height="wrap_content"   
15      android:text="Change the time"   />
16 
17</LinearLayout>2.java文件:TimePickerDemo.java
view sourceprint?
01package com.test;
02import java.util.Calendar;
03 
04import android.app.Activity;
05import android.app.Dialog;
06import android.app.TimePickerDialog;
07import android.app.TimePickerDialog.OnTimeSetListener;
08import android.os.Bundle;
09import android.view.View;
10import android.view.View.OnClickListener;
11import android.widget.Button;
12import android.widget.TextView;
13import android.widget.TimePicker;
14 
15public classTimePickerDemo extends Activity {
16     
17    private TextView  mtextView;
18     
19    private Button  mbutton;
20    private int mHour,mMinute;
21    static final int TIME_DIALOG=0;
22     
23    @Override
24    protectedvoid onCreate(Bundle savedInstanceState) {
25        // TODO Auto-generated method stub
26        super.onCreate(savedInstanceState);
27         
28        setContentView(R.layout.timepicker);
29         
30        finalCalendar  calendar =Calendar.getInstance();
31         
32        this.mHour=calendar.get(Calendar.HOUR_OF_DAY);
33         
34        this.mMinute=calendar.get(Calendar.MINUTE);
35         
36        mtextView=(TextView)findViewById(R.id.timeDisplay);
37        mbutton  =(Button)findViewById(R.id.pickTime);
38         
39        mbutton.setOnClickListener(clickListener);
40         
41    }
42 
43    private OnClickListener   clickListener = newOnClickListener() {
44         
45        @Override
46        publicvoid onClick(View v) {
47            showDialog(TIME_DIALOG);
48        }
49    };
50     
51    privatevoid updateDisplay() {
52        // TODO Auto-generated method stub
53        mtextView.setText(newStringBuilder()
54                          .append(pad(mHour)).append(":")
55                          .append(pad(mMinute)));
56    }
57     
58    privateString  pad(int c)
59    {
60        // TODO Auto-generated method stub
61        if(c>=10)
62        {
63            returnString.valueOf(c);
64        }else
65        {
66            return"0"+String.valueOf(c);
67        }
68    }
69    @Override
70    protectedDialog onCreateDialog(intid) {
71  
72        switch(id) {
73        caseTIME_DIALOG:
74             
75            returnnew TimePickerDialog(this,mTimeSetListener,mHour,mMinute,false);
76 
77         
78        }
79        returnnull;
80    }
81     
82    privateOnTimeSetListener  mTimeSetListener=newOnTimeSetListener() {
83         
84        @Override
85        publicvoid onTimeSet(TimePicker view, int hourOfDay, intminute) {
86            // TODO Auto-generated method stub
87             mHour= hourOfDay;                   
88             mMinute=minute;                   
89             updateDisplay();
90        }
91    };
92}

原创粉丝点击