自定义NumberPicker,更改字体颜色、分割线样式
来源:互联网 发布:怎样评价井柏然 知乎 编辑:程序博客网 时间:2024/05/22 04:39
---------------重写NumberPicker已达到修改显示字体颜色大小------------------
public class TextColorNumberPicker extends NumberPicker { public TextColorNumberPicker(Context context) { super(context); } public TextColorNumberPicker(Context context, AttributeSet attrs) { super(context, attrs); } public TextColorNumberPicker(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override public void addView(View child) { super.addView(child); updateView(child); } @Override public void addView(View child, int index, android.view.ViewGroup.LayoutParams params) { super.addView(child, index, params); updateView(child); } @Override public void addView(View child, android.view.ViewGroup.LayoutParams params) { super.addView(child, params); updateView(child); } public void updateView(View view) { if (view instanceof EditText) { //这里修改显示字体的属性,主要修改颜色// ((EditText) view).setTextColor(Color.parseColor("#BAA785")); ((EditText) view).setTextSize(12); } }
-----修改分割线颜色和线宽,需要在初始化控件后,通过反射进行动态设置颜色。---
**********注意:在NumberPicker 的 setDisplayedValues调用后调用如下方法:
public void setNumberPickerDividerColor(NumberPicker numberPicker) { NumberPicker picker = numberPicker; Field[] pickerFields = NumberPicker.class.getDeclaredFields(); for (Field pf : pickerFields) { if (pf.getName().equals("mSelectionDivider")) { pf.setAccessible(true); try { //设置分割线的颜色值 透明 pf.set(picker, new ColorDrawable(this.getResources().getColor(R.color.diver_gray))); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (Resources.NotFoundException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } break; } } // 分割线高度 for (Field pf2 : pickerFields) { if (pf2.getName().equals("mSelectionDividerHeight")) { pf2.setAccessible(true); try { int result = 3; pf2.set(picker, result); } catch (Exception e) { e.printStackTrace(); } break; } } }
*************************使用方法******************************
TextColorNumberPicker num_picker =(TextColorNumberPicker) dateTimeLayout.findViewById(R.id.num_picker);num_picker.setNumberPickerDividerColor(num_picker);
0 0
- 自定义NumberPicker,更改字体颜色、分割线样式
- Android 原生NumberPicker控件修改分割线颜色及字体颜色大小
- 设置numberpicker、DatePicker中间分割线颜色
- 改变NumberPicker文字,分割线的颜色
- 可设置的NumberPicker(时间选择器)分割线 字体颜色以及大小等属性
- swift3 去除空白行分割线 更改分割线颜色
- iOS 更改tabBar分割线颜色
- UITableView分割线样式与颜色
- EasyUI自定义边框分割线样式
- EasyUI自定义边框分割线样式
- iOS UITableView分割线颜色,长度自定义
- Android学习之数字选择器NumberPicker之修改字色字号分割线颜色
- Android修改DatePicker字体颜色及分割线颜色
- android中更改spinner、AutoCompleteTextView分割线的颜色
- Android 更改系统DataPicker分割线颜色和距离
- <hr>分割线样式
- 改变tableview的分割线长、颜色问题 以及自定义分割线
- ios 隐藏cell分割线和自定义cell分割线颜色
- FFmpeg For Android (三) 移植main函数到安卓上执行ffmpeg命令
- 使用分组查询学生相关信息
- SQL--上机二限定条件的分组查询
- openssl数字证书常见格式与协议介绍
- 实习一周的工作总结
- 自定义NumberPicker,更改字体颜色、分割线样式
- 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)
- Centos pptp vpn 一键安装脚本
- Poco:http中传输json对象
- C语言凯撒加密
- 【Augmented Reality】增强现实中的光学透射式头盔显示器的标定深入
- java String StringBuffer StringBuilder
- redis安装
- ACM篇:POJ 2200 --A Card Trick