Re: [问题] 更改TimePicker 颜色 分格线颜色

楼主: csk (:))   2014-05-16 18:13:02
※ 引述《LiHowDie (我要坚强 我可以)》之铭言:
: 请问有人知道怎么更改
: TimePicker 的 文字颜色 还有 分格线颜色吗?!
: 上网看了别人讲的 没有一个可以试成功的 =..=
: 都是style parent那边错误
可以 recursive 的方式手动设定 background 或是背景,
TimePicker 是一个包含两个 NumberPicker 的 LinearLayout 和 一个 Button 组成,
NumberPicker 是两个 ImageButton 及一个 EditText 组成,
可以依照层级呼叫的次数或是 component 的 resource ID 来判断要怎样改,
这两个 widget 的 xml 格式请参考
frameworks/base/core/res/res/layout/time_picker.xml
frameworks/base/core/res/res/layout/number_picker.xml
private boolean applyCustomizedTheme(ViewGroup parent) {
for(int i=0; i<parent.getChildCount(); i++) {
View child = parent.getChildAt(i);
if(child instanceof ViewGroup) {
// TimePicker 或是 NumberPicker 的外皮
// 改完之后继续往内层找
applyCustomizedTheme( (ViewGroup) child);
} else if(child != null) {
// 不是 ViewGroup 也不为 null 那就是最底层的 component
if(child instanceof EditText) {
// NumberPicker 中间的文字
} else if(child instanceof ImageButton) {
if(child.getId() == getResources().getIdentifier(
"increment", "id", "android") {
// NumberPicker 的增加纽
} else if(child.getId() == getResources().getIdentifier(
"decrement", "id", "android") {
// NumberPicker 的减少纽
}
}
}
}
}
作者: LiHowDie (我要坚强 我可以)   2014-05-19 17:37:00
这内容我也有看到 只是我不晓得那个参数viewGroup要丢什么进去!!!我大概知道了 我研究一下 谢谢你唷!!但是好像没有ImageView呢!!打错 是 ImageButton很奇怪的是 我怎么解析他 最后是有解析到1个NumberPicker他后面ID有写是Hour 然后 一个 TextView 他是Divider他应该就是那个 冒号 !! 然后最后一个也是NumberPicker他是Minute 一共这三个Child但是问题来了 这两个NumberPicker 怎么解析 都只能抓到他当前数字的EditText 不能抓到其他的 而且该颜色只有TimePicker 选项内的时间!! 等于其他颜色都是白色而且只要移动数字 颜色就不见了 ....怎么抓都抓不到ImageButton
楼主: csk (:))   2014-05-21 13:12:00
把 child 转型之后就可以使用该类的函式了

Links booklink

Contact Us: admin [ a t ] ucptt.com