我在代码中创建一个TimePickerDialog,我想在它上面有自定义的颜色。默认情况下,它是灰色和丑陋的,我希望它有特定的颜色。
我按如下方式创建TimePickerDialog:
TimePickerDialog time = new TimePickerDialog(
context,
R.style.timePickerDialog,
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int i, int i1) {}
}, 10, 0, DateFormat.is24HourFormat(this)
);但它的颜色错误,我没有在我的应用程序中的任何地方使用。我甚至应该为这个对话框指定样式吗?为什么它出来时是灰色和暗红色的?
我不明白为什么没有这方面的教程。有没有其他超级秘密的方法可以在Android上挑选时间?
发布于 2017-07-31 09:38:35
您可以通过为TimePicker添加样式来更改其样式。您可以通过两种方式完成此操作,通过指定强调颜色或通过更改计时器中每个元素的颜色。
要通过指定强调色进行更改,请执行以下操作:
<item name="colorAccent">yourColor</item>要通过指定每个元素的颜色进行更改,请执行以下操作:
使用以下命令设置样式:
<item name="android:timePickerStyle">@style/MyTimePicker</item>然后使用以下命令创建样式:
<style name="MyTimePicker" parent="android:Widget.Material.Light.TimePicker">
<item name="android:timePickerMode">clock</item>
<item name="android:headerBackground">yourcolor</item>
<item name="android:numbersTextColor">your_color</item>
<item name="android:numbersInnerTextColor">your_color</item>
<item name="android:numbersSelectorColor">your_color</item>
<item name="android:numbersBackgroundColor">your_color</item>
<item name="android:amPmTextColor">?android:attr/textColorSecondary</item>
</style>https://stackoverflow.com/questions/45404208
复制相似问题