-
Notifications
You must be signed in to change notification settings - Fork 131
DateTimePicker 使用说明
LOPER7 edited this page Sep 13, 2022
·
19 revisions
app:layout 为自定义选择器布局 可参考 DateTimePicker 自定义
<com.loper7.date_time_picker.DateTimePicker
android:id="@+id/picker"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:dt_layout="@layout/layout_date_picker_globalization1"
app:dt_showLabel="true"
app:dt_textBold="true"
app:dt_dividerColor="#E5E5E5"
app:dt_textColor="#666666"
app:dt_selectedTextBold="true"
app:dt_themeColor="@color/colorPrimary"
app:dt_normalTextSize="14sp"
app:dt_selectTextSize="16sp" />- 设置监听
dateTimePicker.setOnDateTimeChangedListener { millisecond -> }- 设置自定义选择器布局(注意:需要在dateTimePicker其他方法之前调用,否则其他方法将会失效)
详见 自定义你的选择器
dateTimePicker.setLayout(R.layout.layout_date_picker_segmentation)//自定义layout resId- 设置显示状态
DateTimePicker支持显示 年月日时分 五个选项的任意组合,显示顺序以此为年、月、日、时、分,setDisplayType中可无序设置。
dateTimePicker.setDisplayType(intArrayOf(
DateTimeConfig.YEAR,//显示年
DateTimeConfig.MONTH,//显示月
DateTimeConfig.DAY,//显示日
DateTimeConfig.HOUR,//显示时
DateTimeConfig.MIN))//显示分- 设置默认选中时间
dateTimePicker.setDefaultMillisecond(defaultMillisecond)//defaultMillisecond 为毫秒时间戳- 设置允许选择的最小时间
dateTimePicker.setMinMillisecond(minMillisecond)- 设置允许选择的最大时间
dateTimePicker.setMaxMillisecond(maxMillisecond)- 是否显示label标签(选中栏 年月日时分汉字)
dateTimePicker.showLabel(true)- 设置主题颜色
dateTimePicker.setThemeColor(ContextCompat.getColor(context,R.color.colorPrimary))- 设置默认字体颜色
dateTimePicker.setTextColor(ContextCompat.getColor(context,R.color.colorGray))- 设置选择器分割线颜色
dateTimePicker.setDividerColor(ContextCompat.getColor(context,R.color.colorDivider))- 设置字体大小
normal 为预览字体大小,select 为选中字体大小
dateTimePicker.setTextSize(normal = 13,select = 15)//单位为sp- 设置标签文字
//全部
dateTimePicker.setLabelText(" Y"," M"," D"," Hr"," Min")
//指定
dateTimePicker.setLabelText(min = "M")- 设置国际化日期显示格式
/**
* 设置国际化日期格式显示 如果没有自定义layout且需要设置的日期格式为 dd-MM(单词缩写)-yyyy HH:mm:ss,此方法会改变年月日的顺序,及月份的显示。
* @param global : DateTimeConfig.GLOBAL_LOCAL 根据设备系统语言自动选择
* DateTimeConfig.GLOBAL_CHINA 设置日期格式为 yyyy-MM-dd HH:mm:ss
* DateTimeConfig.GLOBAL_US 设置日期格式为 dd-MM(单词缩写)-yyyy HH:mm:ss
*/
dateTimePicker.setGlobal(DateTimeConfig.GLOBAL_LOCAL)- 获取指定位置的numberPicker
var numberPicker:NumberPicker? = picker.getPicker(DateTimeConfig.YEAR)