1

我有一个问题。我使用 actionbarsherlock 库。我有一个绿色操作栏,我想为我的所有应用程序使用绿色主题。如何将蓝色变为绿色?它在整个应用程序中都是可取的。 在此处输入链接描述

4

3 回答 3

1

你可以这样设计它:

<style name="myStyle" parent="android:Theme.Holo">
     <item name="android:calendarViewStyle">@style/myCalendarView</item>
</style>

<style name="myCalendarView" parent="android:Widget.Holo.CalendarView">
     <item name="android:selectedDateVerticalBar">@drawable/myDivider</item>
</style>

默认分隔符是这样的:

在此处输入图像描述

只需将颜色更改为绿色,瞧,您将拥有绿色分隔线。

于 2013-01-22T20:01:53.817 回答
1

我找到了答案。DatePicker 由 CalendarView 和 NumberPicker 组成。CalendarView 很容易设计,但 NumberPicker 不再,因为他的属性是私有的,不应该找到方法。唯一的选择是从头开始完全重写这个小部件 DatePicker,但这是非常耗时的工作。好在我找到了一个 HoloEverywhere 库,这些人都已经完成了,我只能自己替换图标/图片。

于 2013-04-03T07:50:56.467 回答
0

使用此代码:

Field[] pickerFields = NumberPicker.class.getDeclaredFields();
        for (Field pf : pickerFields) {
            if (pf.getName().equals("mSelectionDivider")) {
                pf.setAccessible(true);
                try {
                    pf.set(daypicker, new ColorDrawable(getResources().getColor(R.color.transparent)));//you can use all colors
                    pf.set(mounthpicker, new ColorDrawable(getResources().getColor(R.color.transparent)));
                    pf.set(yearpicker, new ColorDrawable(getResources().getColor(R.color.transparent)));
                } catch (IllegalArgumentException e) {
                    e.printStackTrace();
                } catch (Resources.NotFoundException e) {
                    e.printStackTrace();
                } catch (IllegalAccessException e) {
                    e.printStackTrace();
                }
                break;
            }
于 2015-06-10T20:38:49.243 回答