Android 弹出式布局之DatePickerDialog、TimePickerDialog使用

  • Post author:
  • Post category:其他

在说明
DatePickerDialog
TimePickerDialog之前,我们先看看
DatePicker
TimePicker,从名字可以发现,大的区别其实就是一个是布局里面,一个是浮动在布局上的。

1、DatePicker

布局文件

 <DatePicker
	 android:id="@+id/datePicker"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:layout_gravity="center" />

init方法使用,需要注意月份的传入是从0开始

 datePicker.init(2018, 11, 11, new DatePicker.OnDateChangedListener() {
     @Override
     public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
     }
 });

常用的属性

  • android:calendarViewShown:是否显示日历。
  • android:startYear:设置可选开始年份。
  • android:endYear:设置可选结束年份。
  • android:maxDate:设置可选最大日期,以mm/dd/yyyy格式设置。
  • android:minDate:设置可选最小日期,以mm/dd/yyyy格式设置。

展示效果
在这里插入图片描述

2、TimePicker

布局文件

<TimePicker
   android:id="@+id/timePicker"
   android:layout_width="match_parent"
   android:layout_height="wrap_content" />

常用的属性

  • datePickeris24HourView():判断是否为24小时制。
  • setIs24HourView():设置是否为24小时制显示。
  • getCurrentXxx():获取当前时间。
  • setCurrentXxx():设置当前时间。
  • setOnTimeChangedListener():设置时间被修改的回调方法。

展示效果
在这里插入图片描述

3、DatePickerDialog

DatePickerDialog pickerDialog = new DatePickerDialog(MainActivity.this, 
		new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {

    }
}, 2018, 11, 11);
pickerDialog.show();

在这里插入图片描述

4、TimePickerDialog

TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this,
        new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

            }
        }, 20, 33, true);
timePickerDialog.show();

在这里插入图片描述

通过小键盘可以切换为数字时钟效果
在这里插入图片描述

5、AnalogClock(模拟时钟)、DigitalClock(数字时钟)两个都已经过时了

6、TextClock (API17开始支持)

<TextClock
   android:id="@+id/textClock"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_marginTop="5dp"
   android:fontFamily="sans-serif-light"
   android:format12Hour="yyyy年MM月dd EE\naa hh:mm:ss"
   android:format24Hour="yyyy年MM月dd EE\naa HH:mm:ss"
   android:gravity="center_horizontal"
   android:textSize="26sp"
   android:textStyle="normal"
   tools:targetApi="jelly_bean_mr1" />

支持设置显示格式,包括了日期时间设置


版权声明:本文为wanggang514260663原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。