1、main.xml的代码:

< ?xml version="1.0" encoding="utf-8"?>
<LINEARLAYOUT android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android">
<TEXTVIEW android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/dateDisplay" android:textSize="20sp">
</TEXTVIEW>
<BUTTON android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="改变日期" android:id="@+id/pickDate" android:textSize="20sp">
</BUTTON>
</LINEARLAYOUT>

2、java代码:

package android.basic.lesson10;

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.Dialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;

public class MainHelloDatePicker extends Activity {

//准备公用属性
private TextView dateDisplay;
private Button pickDate;
private int mYear;
private int mMonth;
private int mDay;

//准备对话框Id
static final int DATE_DIALOG_ID = 0;

//准备日期设置监听器
private OnDateSetListener dsl = new DatePickerDialog.OnDateSetListener(){

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear =year;
mMonth= monthOfYear;
mDay= dayOfMonth;
dateDisplay.setText(mYear+"-"+(mMonth+1)+"-"+mDay);
}
};

//重写创建对话框方法
@Override
protected Dialog onCreateDialog(int id){
switch(id){
case DATE_DIALOG_ID:
//把Activity上下文、日期设置监听器、以及日期的年月日都作为参数传给那个新成立的对话框组件
return new DatePickerDialog(this, dsl, mYear, mMonth, mDay);
}
return null;
}

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

//得到当前日期
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);

//获取xml中的组件
dateDisplay= (TextView)findViewById(R.id.dateDisplay);
pickDate = (Button)findViewById(R.id.pickDate);

//给日期显示组件一个初始值
dateDisplay.setText(mYear+"-"+(mMonth+1)+"-"+mDay);

//给按钮绑定点击监听器
pickDate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
showDialog(DATE_DIALOG_ID);
}
});
}
}

3、运行程序见图片

源文件来自:http://android.yaohuiji.com/archives/390

更多相关文章

  1. Android关机界面代码
  2. android 日期对话框
  3. Android(安卓)弹出框
  4. android > 弹出复选框
  5. android calendar的使用
  6. Android监听Home键和最近任务
  7. Android(安卓)5中样式对话框
  8. Android(安卓)简易对话框
  9. Android回调事件传播-android学习之旅(四十五)

随机推荐

  1. linux中常用时间和字符串之间相互转化
  2. Linux下CPU显示信息解释
  3. Git: 合并几个commit为一个commit
  4. Ubuntu 12.04安装Bochs 2.6.2, 调试linux
  5. 如果后台的SVN服务器IP地址更改了,如何修
  6. linux中的nm命令简介
  7. 获取Linux 内存页大小的命令
  8. linux线程函数中代替sleep的方法
  9. [Redhat9.0]Models-3安装备忘录之LINUX篇
  10. 项目九 Linux 磁盘管理