動態輸入日期與時間(DatePicker與TimePicker應用)

動態輸入日期與時間(DatePicker與TimePicker應用)

新建一個繼承Activity類的DatePickerAndTimePickerActivity,並設置佈局文件爲:datepickerandtimepicker.xml。

首先在佈局文件中添加一個TextView和DatePicker和TimePicker。

TextView

        android:id="@+id/datepickerandtimepicker_tv"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="@string/show_information"

        android:textSize="20sp" />

 

    <DatePicker

        android:id="@+id/datapickerandtimepicker_dp01"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" />

 

    <TimePicker

        android:id="@+id/datapickerandtimepicker_tp01"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" />

而後在Activity中獲取這3個組件並設置DatePicker和TimePicker的監聽操作。

package lyx.feng.second;

 

import lyx.feng.simpletextdemo.R;

import android.app.Activity;

import android.os.Bundle;

import android.widget.DatePicker;

import android.widget.DatePicker.OnDateChangedListener;

import android.widget.TextView;

import android.widget.TimePicker;

import android.widget.TimePicker.OnTimeChangedListener;

 

public class DatePickerAndTimePickerActivity extends Activity {

    private TextView tv = null;

    private DatePicker dp = null;

    private TimePicker tp = null;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       super.setContentView(R.layout.datepickerandtimepicker);

       this.tv = (TextView) super

              .findViewById(R.id.datepickerandtimepicker_tv);

       this.dp = (DatePicker) super

              .findViewById(R.id.datepickerandtimepicker_dp01);

       this.tp = (TimePicker) super

              .findViewById(R.id.datepickerandtimepicker_tp01);

       this.dp.init(2016, 6, 4, new OnDateChangedListener() {

 

           @Override

           public void onDateChanged(DatePicker view, int year,

                  int monthOfYear, int dayOfMonth) {

              tv.setText(format(String.valueOf(year) + "/"

                     + format(String.valueOf(monthOfYear)) + "/"

                     + format(String.valueOf(dayOfMonth))));

           }

       });

       this.tp.setOnTimeChangedListener(new OnTimeChangedListener() {

 

           @Override

           public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {

              tv.setText(format(String.valueOf(hourOfDay) + ":"

                     + format(String.valueOf(minute))));

           }

       });

    }

 

    public String format(String x) {

       if (x.length() == 1) {

           x = "0" + x;

       }

       return x;

    }

}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章