Android日期選擇器對(duì)話框DatePickerDialog使用詳解
調(diào)用Android原生日期選擇器對(duì)話框就是DatePickerDialog,具體內(nèi)容如下
在Android4.4系統(tǒng)上效果如圖:

在Android5.0以上效果如圖:

1、Activity的onCreate方法中獲取當(dāng)時(shí)的年,月,日
Calendar ca = Calendar.getInstance(); mYear = ca.get(Calendar.YEAR); mMonth = ca.get(Calendar.MONTH); mDay = ca.get(Calendar.DAY_OF_MONTH);
2、通過(guò)按鈕觸發(fā)日期選擇器
btn_day.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//TODO 調(diào)用時(shí)間選擇器
new DatePickerDialog(MainActivity.this, onDateSetListener, mYear, mMonth, mDay).show();
}
});
3、實(shí)現(xiàn)選擇器的監(jiān)聽(tīng),并將獲取到的結(jié)果設(shè)置到TextView上:
/**
* 日期選擇器對(duì)話框監(jiān)聽(tīng)
*/
private DatePickerDialog.OnDateSetListener onDateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
String days;
if (mMonth + 1 < 10) {
if (mDay < 10) {
days = new StringBuffer().append(mYear).append("年").append("0").
append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();
} else {
days = new StringBuffer().append(mYear).append("年").append("0").
append(mMonth + 1).append("月").append(mDay).append("日").toString();
}
} else {
if (mDay < 10) {
days = new StringBuffer().append(mYear).append("年").
append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();
} else {
days = new StringBuffer().append(mYear).append("年").
append(mMonth + 1).append("月").append(mDay).append("日").toString();
}
}
tv_data.setText(days);
}
};
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android實(shí)現(xiàn)水波紋效果實(shí)例代碼
大家好,本篇文章主要講的是Android實(shí)現(xiàn)水波紋效果實(shí)例代碼,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-02-02
Android 中的類(lèi)文件和類(lèi)加載器詳情
這篇文章主要介紹了Android 中的類(lèi)文件和類(lèi)加載器詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06
Android開(kāi)發(fā)筆記之:復(fù)寫(xiě)按鈕方法
本篇文章是對(duì)Android中復(fù)寫(xiě)按鈕方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
Android開(kāi)發(fā)藝術(shù)探索學(xué)習(xí)筆記(七)
這篇文章主要介紹了Android開(kāi)發(fā)藝術(shù)探索學(xué)習(xí)筆記(七)的相關(guān)資料,需要的朋友可以參考下2016-01-01
Kotlin新手基礎(chǔ)學(xué)習(xí)之Elvis操作符
Kotlin 是一種在 Java 虛擬機(jī)上運(yùn)行的靜態(tài)類(lèi)型編程語(yǔ)言,被稱之為 Android 世界的Swift,由 JetBrains 設(shè)計(jì)開(kāi)發(fā)并開(kāi)源,下面這篇文章主要給大家介紹了關(guān)于Kotlin新手基礎(chǔ)學(xué)習(xí)之Elvis操作符的相關(guān)資料,需要的朋友可以參考下。2017-12-12
Android4.1中BinderService用法實(shí)例分析
這篇文章主要介紹了Android4.1中BinderService用法,以實(shí)例形式分析了Android4.1新增BinderService類(lèi)的功能、原理及使用技巧,具有一定參考借鑒價(jià)值2015-10-10
Android中ListView下拉刷新的實(shí)現(xiàn)方法
這篇文章主要為大家詳細(xì)介紹了Android中ListView下拉刷新的實(shí)現(xiàn)方法,感興趣的小伙伴們可以參考一下2016-03-03
Android開(kāi)發(fā)之時(shí)間日期組件用法實(shí)例
這篇文章主要介紹了Android開(kāi)發(fā)之時(shí)間日期組件用法,主要介紹了TimePicker和DatePicker組件,對(duì)于Android程序開(kāi)發(fā)有不錯(cuò)的借鑒價(jià)值,需要的朋友可以參考下2014-08-08
AndroidStudio 使用過(guò)程中出現(xiàn)的異常(Gradle sync failed)處理辦法
本文主要介紹AndroidStudio 使用過(guò)程中出現(xiàn)的異常的解決辦法,這里幫大家舉例說(shuō)明,如何處理出現(xiàn)這種問(wèn)題,有需要的小伙伴可以參考下2016-09-09
Android使用viewpager實(shí)現(xiàn)自動(dòng)無(wú)限輪播圖
這篇文章主要介紹了Android使用viewpager實(shí)現(xiàn)自動(dòng)無(wú)限輪播圖效果,實(shí)現(xiàn)方法大概有兩種,一種是viewpager+作為游標(biāo)的點(diǎn) 。另外一種是重寫(xiě)viewpager,具體實(shí)現(xiàn)過(guò)程大家參考下本文2018-06-06

