main.xml

<?xml version="1.0" encoding="utf-8"?>    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"        android:orientation="vertical" android:layout_width="fill_parent"        android:layout_height="fill_parent">        <TextView android:layout_width="fill_parent"           android:layout_height="wrap_content" android:text="日期控件的使用DEMO" />        <LinearLayout android:orientation="horizontal"           android:layout_width="fill_parent" android:layout_height="wrap_content">           <EditText android:id="@+id/showDate" android:layout_width="200dip"               android:layout_height="wrap_content" />           <Button android:id="@+id/but_showDate" android:layout_width="100dip"               android:layout_height="wrap_content" android:text="选择日期" />        </LinearLayout>         </LinearLayout>  

  

MainActivity.java源代码:

package com.wanghf.demo;         import java.util.Calendar;         import android.app.Activity;    import android.app.DatePickerDialog;    import android.app.Dialog;    import android.os.Bundle;    import android.os.Handler;    import android.os.Message;    import android.view.View;    import android.widget.Button;    import android.widget.DatePicker;    import android.widget.EditText;         /**   * 日期控件的简单使用   *   * @author adminelco   * @time 2011-07-20 15:42:24   *   */    public class MainActivity extends Activity {        private EditText showDate = null;        private Button pickDate = null;        private static final int DATE_DIALOG_ID = 1;        private static final int SHOW_DATAPICK = 0;        private int mYear;        private int mMonth;        private int mDay;             /** Called when the activity is first created. */        @Override        public void onCreate(Bundle savedInstanceState) {           super.onCreate(savedInstanceState);           setContentView(R.layout.main);           showDate = (EditText) findViewById(R.id.showDate);           pickDate = (Button) findViewById(R.id.but_showDate);           pickDate.setOnClickListener(new DateButtonOnClickListener());           final Calendar c = Calendar.getInstance();           mYear = c.get(Calendar.YEAR);           mMonth = c.get(Calendar.MONTH);           mDay = c.get(Calendar.DAY_OF_MONTH);           setDateTime();        }             private void setDateTime() {           final Calendar c = Calendar.getInstance();           mYear = c.get(Calendar.YEAR);           mMonth = c.get(Calendar.MONTH);           mDay = c.get(Calendar.DAY_OF_MONTH);                updateDisplay();        }             /**       * 更新日期       */        private void updateDisplay() {           showDate.setText(new StringBuilder().append(mYear).append(                  (mMonth + 1) < 10 ? "0" + (mMonth + 1) : (mMonth + 1)).append(                  (mDay < 10) ? "0" + mDay : mDay));        }             /**       * 日期控件的事件       */        private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {           public void onDateSet(DatePicker view, int year, int monthOfYear,                  int dayOfMonth) {               mYear = year;               mMonth = monthOfYear;               mDay = dayOfMonth;               updateDisplay();           }        };             /**       * 选择日期Button的事件处理       *       * @author Raul       *       */        class DateButtonOnClickListener implements               android.view.View.OnClickListener {           @Override           public void onClick(View v) {               Message msg = new Message();               if (pickDate.equals((Button) v)) {                  msg.what = MainActivity.SHOW_DATAPICK;               }               MainActivity.this.saleHandler.sendMessage(msg);           }        }             @Override        protected Dialog onCreateDialog(int id) {           switch (id) {           case DATE_DIALOG_ID:               return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,                      mDay);           }           return null;        }             @Override        protected void onPrepareDialog(int id, Dialog dialog) {           switch (id) {           case DATE_DIALOG_ID:               ((DatePickerDialog) dialog).updateDate(mYear, mMonth, mDay);               break;           }        }             /**       * 处理日期控件的Handler       */        Handler saleHandler = new Handler() {           @Override           public void handleMessage(Message msg) {               switch (msg.what) {               case MainActivity.SHOW_DATAPICK:                  showDialog(DATE_DIALOG_ID);                  break;               }           }        };    } 

Android 日期控件的简单实现

出处:http://blog.csdn.net/android_home/article/details/6620206

更多相关文章

  1. android开关控件使用(一)
  2. Android控件属性集锦
  3. android 分段显示文本颜色控件
  4. ListView CheckBox点击事件
  5. 时钟控件AnalogClock和DigitalClock
  6. (四)Android事件分发机制 - 总结篇
  7. 安卓基本常用控件: View
  8. android 开发-spinner下拉框控件的实现
  9. 关于安卓 TextView 添加点击事件

随机推荐

  1. UML详解:解析Android消息处理机制:Handler/
  2. android生命周期神器--Lifecycle
  3. 微信转发度最高的十大Android文章
  4. 第一章 Adnroid体系与系统架构
  5. android 使用JavaMail发送邮件
  6. 【Error】MPermissions引入错误 android-
  7. 【Android】第21章 2D图形和动画
  8. ToolBar 去掉默认左间距
  9. Android 下拉框第三方控件 NiceSpinner
  10. 【Android okhttp源码解析 二】同步请求