首页 > 其他分享 >【Android】时间选择器,选择日期DatePicker 简单详解demo及教程

【Android】时间选择器,选择日期DatePicker 简单详解demo及教程

时间:2022-11-02 12:04:59浏览次数:68  
标签:DatePicker layout demo 选择器 import android id append Calendar


作者:程序员小冰,GitHub主页:​​https://github.com/QQ986945193​

新浪微博:​​http://weibo.com/mcxiaobing​

首先给大家看一下我们今天这个最终实现的效果图:

【Android】时间选择器,选择日期DatePicker 简单详解demo及教程_android


这个比较简单,具体效果UI图以及时间显示样式,大家可以自己修改。

总体来说,这个效果实现起来还是比较简单的,我相信你能够移植到自己的项目中。

布局比较简单,就有一个button以及textview。所以我就先放java实现代码吧:

package daviddatepickerdemo.qq986945193.com.daviddatepickerdemo;


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.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
/**
* @author :程序员小冰
* @新浪微博 :http://weibo.com/mcxiaobing
* @GitHub: https://github.com/QQ986945193
*/

/**
* 时间选择器
*/
public class MainActivity extends Activity {
int mYear, mMonth, mDay;
Button btn;
TextView dateDisplay;
final int DATE_DIALOG = 1;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = (Button) findViewById(R.id.dateChoose);
dateDisplay = (TextView) findViewById(R.id.dateDisplay);

btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
showDialog(DATE_DIALOG);
}
});

final Calendar ca = Calendar.getInstance();
mYear = ca.get(Calendar.YEAR);
mMonth = ca.get(Calendar.MONTH);
mDay = ca.get(Calendar.DAY_OF_MONTH);
}

@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_DIALOG:
return new DatePickerDialog(this, mdateListener, mYear, mMonth, mDay);
}
return null;
}

/**
* 设置日期 利用StringBuffer追加
*/
public void display() {
dateDisplay.setText(new StringBuffer().append(mMonth + 1).append("-").append(mDay).append("-").append(mYear).append(" "));
}

private DatePickerDialog.OnDateSetListener mdateListener = new DatePickerDialog.OnDateSetListener() {

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
display();
}
};
}

xml布局文件代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical">

<TextView
android:id="@+id/dateDisplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是默认时间显示"/>

<Button
android:id="@+id/dateChoose"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择日期" />
</LinearLayout>

好了,教程到此结束。如果此文章帮到了你,欢迎点赞。
源代码需要的可以去
(AndroidStudio版)github下载地址:
​​​https://github.com/QQ986945193/DavidDatePickerDemo​


标签:DatePicker,layout,demo,选择器,import,android,id,append,Calendar
From: https://blog.51cto.com/mcxiaobing/5816152

相关文章

  • 【Android】Android开发点击查看手机电量的小功能。学习广播的一个小技能小Demo...
    作者:程序员小冰,GitHub主页:​​https://github.com/QQ986945193​​​微博:​​​http://weibo.com/mcxiaobing​​首先给大家看一下效果图:先写一个广播类:packagedavid.q......
  • Demo55_方法的重写
      重写:需要有继承关系,子类重写父类的方法!1.重写的方法的方法名与被重写的方法的方法名必须相同2.参数列表必须相同3.修饰符(方法的头一个单词称为修饰符public>priva......
  • 【Android】Android开发初学者实现拨打电话的功能,拨打电话app小demo实现
    作者:程序员小冰,GitHub主页:​​https://github.com/QQ986945193​​新浪微博:​​http://weibo.com/mcxiaobing​​首先先给大家看一下最终实现的效果:其实这个案例的dem......
  • Demo54_关于继承_02_super与this
      子类代码://继承packagecom.oop.Jichen_3;//学生类继承学校类publicclassstudentextendsschool{publicstudent(){//本类的无参构造方法super();......
  • Demo53_关于继承01
        学生类中并没有say这个方法,但是他继承了学校类,学校类中具有say方法,所以在main方法中可以输出学生类中的say方法。可以清楚的看见,学生类和老师类是并没有任何......
  • [单片机][FUSB302][PD1.0][PD2.0] PD协议 Demo 例子 代码
    /*-----------------------------------------宏定义-----------------------------------------*//*-----------------------------------------头文件-----------------......
  • Qt+VLC简单的使用显示视频Demo
    先看看效果: vlc播放视频,要比QMediaPlayer实用的多,并且同时运行20个视频时不会出现卡顿。 这个Demo功能实现非常简单,简单的说一下vlc流程:1、创建并初始化一个libvlc实例LI......
  • Qt检测U盘插入拔出Demo
    要做这个,要先知道Qt的QAbstractNativeEventFilter类,虚函数nativeEventFilter。这个类的主要作用是捕获全局windows消息。先看一下效果:基本注意以下两点:1、新建的类要继承QAb......
  • 控制台效果Demo
    先看下效果:效果是这样的,主要是运用的定时器让文字逐步显现出来。......
  • QSystemTrayIcon增加系统托盘图标Demo
    先看一下效果:代码如下#ifndefMAINWINDOW_H#defineMAINWINDOW_H#include<QMainWindow>#include<QMenu>#include<QSystemTrayIcon>#include<QCloseEvent>namespaceUi{......