android之DatePicker时间控件使用举例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/*DatePicker是一个日期选择控件,它继承自FrameLayout类,用来实现的主要功能是使用护可以方便选择日期。如果要捕获用户修改DataPicker控件中的数据改变事件,需要为DatePicker添加OnDateChangedListener监听器。
*/

package com.wencool.datepickerdialog;

import java.util.Calendar;

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

public class MainActivity extends Activity
{
protected static final int DATE_DIALOG_ID = 0;
/*
* 定义好一个时间控件
*/
private DatePicker dataPicker = null;
/*
* 定义5个记录当前时间的变量
*/
private int mYear;
private int mMonth;
private int mDay;
// private int mHour;
// private int mMinute;
/*
* 定义设置时间按钮和获取到设置的的时间
*/
private Button pickDate;
private TextView dateDisplay;

protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(yout.activity_main);
dataPicker = (DatePicker) findViewById(R.id.datePicker);
pickDate = (Button) findViewById(R.id.pickDate);
dateDisplay = (TextView) findViewById(R.id.dateDisplay);
/*
* 注意使用的是View.OnClickListener()
*/
pickDate.setOnClickListener(new View.OnClickListener()
{

@Override
public void onClick(View v)
{
/*
* 通过ID判断输入的为那个对话框,调用方法onCreateDialog(int id)
*/
showDialog(DATE_DIALOG_ID);
}
});
dataPicker.init(mYear, mMonth, mDay, new OnDateChangedListener()
{
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
initView();
Toast.makeText(MainActivity.this, year+"-"+monthOfYear+"-"+dayOfMonth, Toast.LENGTH_LONG).show();
}
});
}

@Override
protected Dialog onCreateDialog(int id)
{

switch (id)
{
case DATE_DIALOG_ID:
initView();
return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);
}
return null;
}
/*
* the callback received when the user "sets" the date in the dialog
*/
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener()
{
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
showDate(mYear, mMonth, mDay);
}
};
/*
* 获取当前的年、月、日、小时、分钟
*/
private void initView()
{
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DATE);
// mHour = c.get(

Calendar.HOUR);
// mMinute = c.get(Calendar.MINUTE);
showDate(mYear, mMonth, mDay);
}
private void showDate(int mYear2, int mMonth2, int mDay2)
{
// Month is 0 based so add 1
dateDisplay.setText(new StringBuilder()
.append("时间:").append(mYear).append("-").append(mMonth + 1).append("-").append(mDay));
}

}

相关文档
最新文档