Android弹出DatePickerDialog并获取值的方法

 更新时间:2019年05月27日 09:22:40   作者:Vivinia_Vivinia  
这篇文章主要为大家详细介绍了Android弹出DatePickerDialog并获取值的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Android弹出DatePickerDialog并获取值的具体代码,供大家参考,具体内容如下

目标效果:

主界面有一个TextView,点击弹出日期选择器对话框,默认显示当前日期,选择后点击确定可以在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页面打开获取当前日期以及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);
 
 //获取当前日期
 getDate();
 
 tvShowDialog=(TextView) findViewById(R.id.tvShowDialog);
 tvShowDialog.setOnClickListener(this);
 
 }
 
 //获取当前日期
 private void getDate() {
 cal=Calendar.getInstance();
 year=cal.get(Calendar.YEAR);    //获取年月日时分秒 
 Log.i("wxy","year"+year);
 month=cal.get(Calendar.MONTH);  //获取到的月份是从0开始计数
 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);//后边三个参数为显示dialog时默认的日期,月份从0开始,0-11对应1-12个月
  dialog.show();
  break;
 
 default:
  break;
 }
 }
 
}

3.需要注意的是,获取日期时月份是从0开始,另外打开对话框时默认月份也是从0开始,因为month本来就是系统中获取,不需要加1,但是指定具体数字时,需要在你想显示的月份上加1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android中利用App实现消息推送机制的代码

    Android中利用App实现消息推送机制的代码

    Android中利用App实现消息推送机制的代码,需要的朋友可以参考下。
    2011-05-05
  • Android自定义组件跟随自己手指主动画圆

    Android自定义组件跟随自己手指主动画圆

    这篇文章主要为大家详细介绍了Android自定义组件跟随自己手指主动画圆,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Android studio配置lambda表达式教程

    Android studio配置lambda表达式教程

    Java 8的一个大亮点是引入Lambda表达式,使用它设计的代码会更加简洁。接下来通过本文给大家介绍Android studio配置lambda表达式教程,需要的朋友参考下吧
    2017-05-05
  • Android代码混淆的写法总结

    Android代码混淆的写法总结

    本篇文章主要介绍了Android代码混淆的写法总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • 利用Android模仿微信摄像圆环进度效果实例

    利用Android模仿微信摄像圆环进度效果实例

    圆环进度条,大家应该都见过,而这篇文章主要给大家介绍了关于利用Android模仿微信摄像圆环进度效果的相关资料,实现后的效果非常不错,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11
  • 浅谈Android Studio 解析XML的三种方法

    浅谈Android Studio 解析XML的三种方法

    这篇文章主要介绍了浅谈Android Studio 解析XML的三种方法,Android Studio 解析XML常见的三种方式:DOM PULL SAX,非常具有实用价值,需要的朋友可以参考下
    2018-07-07
  • Android 三种延迟操作的实现方法

    Android 三种延迟操作的实现方法

    这篇文章主要介绍了Android 延迟操作的实现方法的相关资料,这里提供了三种实现方法,希望能帮助到大家,需要的朋友可以参考下
    2017-08-08
  • android Retrofit2网络请求封装介绍

    android Retrofit2网络请求封装介绍

    大家好,本篇文章主要讲的是android Retrofit2网络请求封装介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Android APP启动时间优化介绍

    Android APP启动时间优化介绍

    大家好,本篇文章主要讲的是Android APP启动时间优化介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Android开发自学笔记(五):使用代码控制界面

    Android开发自学笔记(五):使用代码控制界面

    这篇文章主要介绍了Android开发自学笔记(五):使用代码控制界面,本文讲解了添加第二个layout、添加MyActivity的code、setup函数、getResult函数等内容,需要的朋友可以参考下
    2015-04-04

最新评论