gpt4 book ai didi

java - 如何在 API 28 中设置 android Date- 和 TimePicker 的样式

转载 作者:行者123 更新时间:2023-12-02 10:03:16 34 4
gpt4 key购买 nike

我在 android 中构建了一个应用程序,用于使用日期和时间选择器小部件选择日期和时间。一开始,我使用 API 级别 19 部署/编译应用程序。将 API 级别设置为 28 后,小部件的整体样式发生了变化。所以我现在必须手动设置小部件的样式,但不知道从哪里开始。下面的图片显示了我需要做什么。

图一:

(来源:000webhostapp.com)



图2:

(来源:000webhostapp.com)

将图 1 中 DatePicker 的 android:width 设置为 match_parent 后,小部件不会填充显示并在右侧留下空白,这是不希望的。另外,我想将数字设置为白色,小部件顶部的绿色条应该是透明的。

非常感谢您的每一个帮助,从哪里开始或必须设置哪些属性才能实现目标。

最佳答案

你应该在 styles.xml 中创建自定义样式:

   <style name="YourDialog" parent="@style/Theme.AppCompat.DayNight.Dialog">
<item name="android:colorAccent">@color/ts_blue</item>
<item name="android:buttonTint">@color/ts_blue</item>
<item name="colorControlActivated">@color/ts_blue</item>
<item name="colorControlHighlight">@color/menu_separator_gray</item>
<item name="android:windowBackground">@color/ts_white</item>
<item name="android:buttonBarNegativeButtonStyle">@style/DialogButtonStyle</item>
<item name="android:buttonBarPositiveButtonStyle">@style/DialogButtonStyle</item>
<item name="android:buttonBarNeutralButtonStyle">@style/DialogButtonStyle</item>
</style>

然后像这样申请:

 val datePickerDialog = DatePickerDialog(context, R.style.YourDialog,
DatePickerDialog.OnDateSetListener { _, year, month, dayOfMonth ->
calendar.set(Calendar.YEAR, year)
calendar.set(Calendar.MONTH, month)
calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth)
val formattedDate = DefaultDateFormatter().formatDate(
date = Date(calendar.timeInMillis),
dateFormat = datePickerReturnDateFormat)

filter.id = formattedDate

onFilterSelectionDone()
},
calendar.get(Calendar.YEAR),
calendar.get(Calendar.MONTH),
calendar.get(Calendar.DAY_OF_MONTH)
)

关于java - 如何在 API 28 中设置 android Date- 和 TimePicker 的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55481135/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com