Android彈出DatePickerDialog并獲取值的方法
本文實例為大家分享了Android彈出DatePickerDialog并獲取值的具體代碼,供大家參考,具體內(nèi)容如下
目標(biāo)效果:

主界面有一個TextView,點擊彈出日期選擇器對話框,默認(rèn)顯示當(dāng)前日期,選擇后點擊確定可以在TextView中顯示選擇的值。
1.activity_main.xml頁面定義TextView。
activity_main.xml頁面:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/tvShowDialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="76dp"
android:text="日期" />
</RelativeLayout>
2.MainActivity.java頁面打開獲取當(dāng)前日期以及DatePickerDialog。
MainActivity.java頁面:
package com.example.textcalendar;
import java.util.Calendar;
import android.os.Bundle;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.DatePicker;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener{
private TextView tvShowDialog;
private Calendar cal;
private int year,month,day;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//獲取當(dāng)前日期
getDate();
tvShowDialog=(TextView) findViewById(R.id.tvShowDialog);
tvShowDialog.setOnClickListener(this);
}
//獲取當(dāng)前日期
private void getDate() {
cal=Calendar.getInstance();
year=cal.get(Calendar.YEAR); //獲取年月日時分秒
Log.i("wxy","year"+year);
month=cal.get(Calendar.MONTH); //獲取到的月份是從0開始計數(shù)
day=cal.get(Calendar.DAY_OF_MONTH);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.tvShowDialog:
OnDateSetListener listener=new OnDateSetListener() {
@Override
public void onDateSet(DatePicker arg0, int year, int month, int day) {
tvShowDialog.setText(year+"-"+(++month)+"-"+day); //將選擇的日期顯示到TextView中,因為之前獲取month直接使用,所以不需要+1,這個地方需要顯示,所以+1
}
};
DatePickerDialog dialog=new DatePickerDialog(MainActivity.this, 0,listener,year,month,day);//后邊三個參數(shù)為顯示dialog時默認(rèn)的日期,月份從0開始,0-11對應(yīng)1-12個月
dialog.show();
break;
default:
break;
}
}
}
3.需要注意的是,獲取日期時月份是從0開始,另外打開對話框時默認(rèn)月份也是從0開始,因為month本來就是系統(tǒng)中獲取,不需要加1,但是指定具體數(shù)字時,需要在你想顯示的月份上加1
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- android dialog根據(jù)彈窗等級排序顯示的示例代碼
- Android自定義Dialog原理實例解析
- Android 自定義加載動畫Dialog彈窗效果的示例代碼
- android BottomSheetDialog新控件解析實現(xiàn)知乎評論列表效果(實例代碼)
- Android 之BottomsheetDialogFragment仿抖音評論底部彈出對話框效果(實例代碼)
- Android ProgressDialog用法之實現(xiàn)app上傳文件進度條轉(zhuǎn)圈效果
- Android自定義底部彈出框ButtomDialog
- Android中AlertDialog四種對話框的最科學(xué)編寫用法(實例代碼)
- 詳解Android 8.1.0 Service 中 彈出 Dialog的方法
- Android 彈出Dialog時隱藏狀態(tài)欄和底部導(dǎo)航欄的方法
- Android開發(fā)之DatePickerDialog、TimePickerDialog時間日期對話框用法示例
- Android修改Dialog樣式的方法
相關(guān)文章
ubuntu環(huán)境下反編譯android apk的方法
今天小編就為大家分享一篇關(guān)于ubuntu環(huán)境下反編譯android apk的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03
Android Activity與Service通信(不同進程之間)詳解
這篇文章主要介紹了Android Activity與Service通信(不同進程之間)的相關(guān)資料,這里提供了三種方法,需要的朋友可以參考下2016-10-10
Android自定義控件實現(xiàn)UC瀏覽器語音搜索效果
這篇文章主要為大家詳細介紹了Android自定義控件實現(xiàn)UC瀏覽器語音搜索效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04
android 中ProgressDialog實現(xiàn)全屏效果的示例
本篇文章主要介紹了android 中ProgressDialog實現(xiàn)全屏效果的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
Android 游戲引擎libgdx 資源加載進度百分比顯示案例分析
因為案例比較簡單,所以簡單用AndroidApplication -> Game -> Stage 搭建框架感興趣的朋友可以參考下2013-01-01
Android開發(fā)listview選中高亮簡單實現(xiàn)代碼分享
這篇文章主要介紹了Android開發(fā)listview選中高亮簡單實現(xiàn)代碼分享,具有一定借鑒價值,需要的朋友可以參考下2018-01-01

