EX04_15.java
上传用户:vip_99
上传日期:2021-03-27
资源大小:61159k
文件大小:3k
源码类别:

android开发

开发平台:

Java

  1. package irdc.ex04_15;
  2. /* import相关class */
  3. import java.util.Calendar;
  4. import android.app.Activity;
  5. import android.os.Bundle;
  6. import android.widget.TextView;
  7. import android.widget.DatePicker;
  8. import android.widget.TimePicker;
  9. public class EX04_15 extends Activity 
  10.   /*声明日期及时间变量*/
  11.   private int mYear;
  12.   private int mMonth;
  13.   private int mDay;
  14.   private int mHour;
  15.   private int mMinute;
  16.   /*声明对象变量*/
  17.   TextView tv;
  18.   TimePicker tp;
  19.   DatePicker dp;
  20.   
  21.   /** Called when the activity is first created. */
  22.   @Override
  23.   public void onCreate(Bundle savedInstanceState)
  24.   {
  25.     /*取得目前日期与时间*/
  26.     Calendar c=Calendar.getInstance();
  27.     mYear=c.get(Calendar.YEAR);
  28.     mMonth=c.get(Calendar.MONTH);
  29.     mDay=c.get(Calendar.DAY_OF_MONTH);
  30.     mHour=c.get(Calendar.HOUR_OF_DAY);
  31.     mMinute=c.get(Calendar.MINUTE);
  32.     
  33.     super.onCreate(savedInstanceState);
  34.     /* 载入main.xml Layout */
  35.     setContentView(R.layout.main);    
  36.     
  37.     /*取得TextView对象,并调用updateDisplay()
  38.       来设置显示的初始日期时间*/
  39.     tv= (TextView) findViewById(R.id.showTime);
  40.     updateDisplay();
  41.     
  42.     /*取得DatePicker对象,以init()
  43.       设置初始值与onDateChangeListener() */
  44.     dp=(DatePicker)findViewById(R.id.dPicker);
  45.     dp.init(mYear,mMonth,mDay,new DatePicker.OnDateChangedListener()
  46.     {
  47.       @Override
  48.       public void onDateChanged(DatePicker view,int year,
  49.                           int monthOfYear,int dayOfMonth)
  50.       {
  51.         mYear=year;
  52.         mMonth= monthOfYear;
  53.         mDay=dayOfMonth;
  54.         /*调用updateDisplay()来改变显示日期*/
  55.         updateDisplay();
  56.       }
  57.     });
  58.     
  59.     /*取得TimePicker对象,并设置为24小时制显示*/
  60.     tp=(TimePicker)findViewById(R.id.tPicker);
  61.     tp.setIs24HourView(true);
  62.     
  63.     /*setOnTimeChangedListener,并覆盖onTimeChanged event*/
  64.     tp.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener()
  65.     {
  66.       @Override
  67.       public void onTimeChanged(TimePicker view,
  68.                               int hourOfDay,
  69.                               int minute)
  70.       {
  71.         mHour=hourOfDay;
  72.         mMinute=minute;
  73.         /*调用updateDisplay()来改变显示时间*/
  74.         updateDisplay();
  75.       }
  76.     });
  77.   }
  78.     
  79.   /*设置显示日期时间的方法*/
  80.   private void updateDisplay()
  81.   {
  82.     tv.setText(
  83.       new StringBuilder().append(mYear).append("/")
  84.                          .append(format(mMonth + 1)).append("/")
  85.                          .append(format(mDay)).append(" ")
  86.                          .append(format(mHour)).append(":")
  87.                          .append(format(mMinute))
  88.     );
  89.   }
  90.   
  91.   /*日期时间显示两位数的方法*/
  92.   private String format(int x)
  93.   {
  94.     String s=""+x;
  95.     if(s.length()==1) s="0"+s;
  96.     return s;
  97.   }
  98. }