马会东的博客

马会东的博客

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

关键点:

1. getMonth():     获取当前月(注意:返回数值为0..11,需要自己+1来显示)

2. 初始年(译者注:注意使用new Date()初始化年时,需要+1900,如下:date.getYear() + 1900)

 

 

DatePicker介绍  DatePicker 继承FrameLayout类,

 日期选择控件的主要功能是向用户提供包含年、月、日得日期数据并允许用户对其修改。  如果要捕获用户修改日期选择控件的数据事件响应,需要为DatePicker添加一个OnDateChangedListener监听器.    1.重要方法  

  1. getDayOfMonth():获取当前Day  
  2. getMonth():     获取当前月(注意:返回数值为0..11,需要自己+1来显示)  
  3. getYear()       获取当前年  
  4. updateDate(int year, int monthOfYear, int dayOfMonth):更新日  
  5. init(int year, int monthOfYear, int dayOfMonth, DatePicker.OnDateChangedListener onDateChangedListener)  
  6.   
  7. 参数  
  8. year         初始年(译者注:注意使用new Date()初始化年时,需要+1900,如下:date.getYear() + 1900)  
  9. monthOfYear  初始月。  
  10. dayOfMonth   初始日。  
  11. onDateChangedListener   日期改变时通知用户的事件监听,可以为空(null)。  
getDayOfMonth():获取当前Day
getMonth():     获取当前月(注意:返回数值为0..11,需要自己+1来显示)
getYear()       获取当前年
updateDate(int year, int monthOfYear, int dayOfMonth):更新日
init(int year, int monthOfYear, int dayOfMonth, DatePicker.OnDateChangedListener onDateChangedListener)

参数
year         初始年(译者注:注意使用new Date()初始化年时,需要+1900,如下:date.getYear() + 1900)
monthOfYear  初始月。
dayOfMonth   初始日。
onDateChangedListener   日期改变时通知用户的事件监听,可以为空(null)。

 

效果图

 

 

本程序main.xml源码

  1. <href="mailto:"></a><pre class="cpp" name="code"><?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:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="日期选择控件"  
  11.     android:layout_width="fill_parent"  
  12.     android:layout_height="wrap_content"/>  
  13. </pre><pre class="cpp" name="code"><DatePicker   
  14.  android:id="@+id/datePicker"  
  15.  android:layout_width="fill_parent"  
  16.  android:layout_height="wrap_content"/>  
  17.   
  18. <TextView  
  19.     android:id="@+id/textView"  
  20.     android:layout_width="fill_parent"  
  21.     android:layout_height="wrap_content"  
  22.     android:layout_gravity="center_vertical"/>  
  23.    
  24. </LinearLayout></pre><br>  
  25. <pre></pre>  
  26. <p><span style="font-size: 18px;">Java源码</span></p>  
  27. <pre class="html" name="code">package com.sx.DatePicker;  
  28.   
  29. import java.util.Calendar;  
  30. import java.util.Locale;  
  31.   
  32. import android.app.Activity;  
  33. import android.os.Bundle;  
  34. import android.widget.DatePicker;  
  35. import android.widget.DatePicker.OnDateChangedListener;  
  36. import android.widget.TextView;  
  37.   
  38. public class DatePickerActivity extends Activity   
  39. {  
  40.       
  41.     private DatePicker datePicker = null;  
  42.     private TextView   textView   = null;   
  43.     /** Called when the activity is first created. */  
  44.     @Override  
  45.     public void onCreate(Bundle savedInstanceState)   
  46.     {  
  47.         super.onCreate(savedInstanceState);  
  48.         setContentView(R.layout.main);  
  49.           
  50.         datePicker = (DatePicker)findViewById(R.id.datePicker);  
  51.         textView   = (TextView)  findViewById(R.id.textView);  
  52.           
  53.         //创建一个日历引用calendar,通过静态方法getInstance() 从指定时区 Locale.CHINA 获得一个日期实例  
  54.          Calendar calendar = Calendar.getInstance(Locale.CHINA);  
  55.           
  56.         int year         = calendar.get(Calendar.YEAR);  
  57.         int monthOfYear  = calendar.get(Calendar.MONTH);  
  58.         int dayOfMonth   = calendar.get(Calendar.DAY_OF_MONTH);  
  59.           
  60.         datePicker.init(year, monthOfYear, dayOfMonth, new OnDateChangedListener()  
  61.         {  
  62.             @Override  
  63.        public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)   
  64.        {  
  65.         textView.setText("你选择的日期是: " + year + "年" + (monthOfYear + 1) + "月" + dayOfMonth + "日");  
  66.        }  
  67.         });  
  68.     }  
  69. }  
  70. </pre>  
  71. <p><br>  
  72. <span style="font-size: 18px;">以对话框形式显示日期视图</span></p>  
  73. <p><span style="font-size: 18px;">效果图</span></p>  
  74. <p><span style="font-size: 18px;"><img alt="" src="http://hi.csdn.net/attachment/201108/15/0_1313384568KmfQ.gif"></span></p>  
  75. <p</p>  
  76. <p><span style="font-size: 18px;">java源码实现</span></p>  
  77. <pre class="html" name="code">package com.sx.DatePickerDialog;  
  78.   
  79. import java.util.Calendar;  
  80. import java.util.Locale;  
  81.   
  82. import android.app.Activity;  
  83. import android.app.DatePickerDialog;  
  84. import android.os.Bundle;  
  85. import android.widget.DatePicker;  
  86.   
  87.   
  88. public class DatePickerDialogActivity extends Activity   
  89. {  
  90.           
  91.     /** Called when the activity is first created. */  
  92.     @Override  
  93.     public void onCreate(Bundle savedInstanceState)   
  94.     {  
  95.         super.onCreate(savedInstanceState);  
  96.         setContentView(R.layout.main);  
  97.           
  98.         final Calendar calendar = Calendar.getInstance(Locale.CHINA);  
  99.         final int year =  calendar.get(Calendar.YEAR);  
  100.         final int month = calendar.get(Calendar.MONTH);  
  101.         final int day =   calendar.get(Calendar.DAY_OF_MONTH);  
  102.     
  103.         DatePickerDialog datePickerDialog = new DatePickerDialog(this, setting, year, month, day);  
  104.         datePickerDialog.show();  
  105.           
  106.     }  
  107.       
  108.     //当点击DatePickerDialog控件的设置按钮时,调用该方法    
  109.      DatePickerDialog.OnDateSetListener setting = new DatePickerDialog.OnDateSetListener()    
  110.     {   
  111.     @Override  
  112.     public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth)  
  113.     {  
  114.         setTitle("你按下了日期设置键");        
  115.     }         
  116.     };        
  117. }</pre>  
  118. <p><br>  
  119.  </p>  
  120. <pre></pre>  
  121. <pre></pre>  
posted on 2015-02-06 16:55  马会东  阅读(3911)  评论(0编辑  收藏  举报