-
Notifications
You must be signed in to change notification settings - Fork 124
CardWeekPickerDialog 使用说明
LOPER7 edited this page Sep 13, 2022
·
4 revisions
//kotlin
CardWeekPickerDialog.builder(context)
.setOnChoose("选择") {weekData,formatValue ->
}.build().show()
CardWeekPickerDialog.builder(context)
.setTitle("WEEK PICKER")//设置弹窗标题
.setBackGroundModel(model)//设置弹窗样式类型
.setWrapSelectorWheel(false)//设置picker是否可循环滚动
.setDefaultMillisecond(defaultDate)//通过时间戳设置默认选中周
.setStartMillisecond(minDate)//通过时间戳设置开始周
.setAssistColor(Color.parseColor("#DDFFFFFF"))//设置弹窗辅助文字颜色
.setDividerColor(Color.parseColor("#222222"))//设置分割线颜色
.setEndMillisecond(maxDate)//通过时间戳设置结束周
.setThemeColor(Color.parseColor("#FF8000"))//设置主题颜色
.setFormatter {//设置数据格式化样式
NumberPicker.Formatter { value: Int ->
var weekData = it[value - 1].toFormatList("MM月dd日")
var str = "从${weekData.first()} 开始到 ${weekData.last()}结束"
str
}
}
.setOnChoose("选择") {weekData,formatValue ->
//选择按钮回调监听
btnCardDialogShow.text = formatValue
}
.setOnCancel("关闭") {
//关闭按钮回调监听
}.build().show()
//由于背景、DateTimePicker以及主题色均可由开发者灵活配置,为了兼容这些配置,所以适配深色模式需要调用以下几个方法进行设置。
//1.自定义dialog背景,为light/dark模式设置不同的值
builder.setBackGroundModel(if(isDark) R.drawable.shape_bg_dialog_dark else R.drawable.shape_bg_dialog_light)
//2.自定义dialog辅助文字颜色
setAssistColor(if(isDark) darkColor else lightColor)
//3.自定义dialog分割线颜色
setDividerColor(if(isDark) darkColor else lightColor)
//这样深色模式就适配完成了,当然,以上三个方法的作用不仅可以用于适配深色模式,也可以传入更契合app主题的颜色,用于与app统一UI风格。