android timepicker分割线颜色,Android修改DatePicker字体颜色及分割线颜色详细介绍

一、DatePicker和TimePicker简介

DatePicker是一个日期选择控件,它继承自FrameLayout类,用来实现的主要功能是使用护可以方便选择日期。如果要捕获用户修改DataPicker控件中的数据改变事件,需要为DatePicker添加OnDateChangedListener监听器。

TimePicker是一个时间选择控件,也继承自FrameLayout类。时间选择控件向用户显示一天中的时间(可以为24小时,也可以为AM/PM制),并允许用户进行选择。如果要捕获用户修改时间数据的事件,便需要为TimePicker添加OnTimeChangedListener监听器。

二、修改DatePicker字体颜色

修改DatePicker字体颜色:如果通过修改空间颜色属性,字体颜色没有改变,可以通过修改DatePicker所在的Activity的theme,在清单文件AndroidManifest.xml对应的Activity加上如下代码:

android:theme="@android:style/Theme.Holo.Light.DialogWhenLarge.NoActionBar"

DatePicker字体颜色即可变成黑色,效果如下:

b7ac60d551c47a4cc0a26728ef005661.png

227eaaaddf2ef0804bf60d76690dd65b.png

三、修改DatePicker分割线颜色

setDatePickerDividerColor(datePicker);

/**

* 设置时间选择器的分割线颜色

*

* @param datePicker

*/

private void setDatePickerDividerColor(DatePicker datePicker) {

// Divider changing:

// 获取 mSpinners

LinearLayout llFirst = (LinearLayout) datePicker.getChildAt(0);

// 获取 NumberPicker

LinearLayout mSpinners = (LinearLayout) llFirst.getChildAt(0);

for (int i = 0; i < mSpinners.getChildCount(); i++) {

NumberPicker picker = (NumberPicker) mSpinners.getChildAt(i);

Field[] pickerFields = NumberPicker.class.getDeclaredFields();

for (Field pf : pickerFields) {

if (pf.getName().equals("mSelectionDivider")) {

pf.setAccessible(true);

try {

pf.set(picker,new ColorDrawable(Color.parseColor("#cccccc")));//设置分割线颜色

} catch (IllegalArgumentException e) {

e.printStackTrace();

} catch (Resources.NotFoundException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

}

break;

}

}

}

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值