更改TimePicker手表内的手的颜色。材料设计?

时间:2016-03-03 09:42:37

标签: android user-interface android-widget android-theme timepicker

我在styles.xml中创建了自己的样式,它看起来像这样:

<style name="myTimePickerStyle" parent="@android:style/Widget.Material.Light.TimePicker">
    <item name="android:numbersTextColor">#ffffff</item>
    <item name="android:numbersBackgroundColor">@color/background</item>
    <item name="android:numbersSelectorColor">#88000000</item>
    <item name="android:headerBackground">@color/background</item>
    <item name="android:colorAccent">@color/background</item>
</style>

我的问题是如何将时钟指针的颜色(小时和时间)更改为与标题相同的颜色?

This is how it looks. the clock hands should be the same color as the background

3 个答案:

答案 0 :(得分:4)

我没试过,但可能会对你有所帮助。 只需在您的样式中添加这两个属性

即可
<style name="myTimePickerStyle" parent="@android:style/Widget.Material.Light.TimePicker">
    <item name="android:numbersTextColor">#ffffff</item>
    <item name="android:numbersBackgroundColor">@color/background</item>
    <item name="android:numbersSelectorColor">#88000000</item>
    <item name="android:headerBackground">@color/background</item>
    <item name="android:colorAccent">@color/background</item>

    <!-- clock hand color change -->

     <item name="android:hand_hour">#88000000</item>
    <item name="android:hand_minute">#88000000</item>
</style>

您应该检查this answer,可能会对您有所帮助。

修改

我在网上搜索了很长时间,并得到了这个解决方案。 这两个属性可能适合您。

    <item name="android:numbersSelectorColor">#ff2d6073</item>
    <item name="android:numbersBackgroundColor">#ffdddddd</item>

Source

答案 1 :(得分:2)

您需要在TimePicker样式中设置colorControlNormal和colorControlActivated,如下所示:

 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id)
        {

            Toast.makeText(getApplicationContext(),, Toast.LENGTH_SHORT).show();
        }
    });

答案 2 :(得分:0)

通过XML,API级别21或更高级别:

android:numbersSelectorColor="@color/Blue"