我意识到,在某些设备上,我的 DatePicker
的微调器不会显示,因为文本是白色而不是黑色(应该是黑色)。
以荣耀 5C 为例:
以一加 5 为例:
我通过设置黑色背景色来实现它:
我尝试更改很多不同的属性,但没有任何效果。
下面是底层代码:
final AlertDialog.Builder datePickerDialog = new AlertDialog.Builder(getContext(), R.style.AlertDialog);
final View view = fragment.getActivity().getLayoutInflater().inflate(R.layout.views_form_pick_date_dialog_day, null);
final AppCompatTextView datePickerDialogTitle = (AppCompatTextView) view.findViewById(R.id.views_form_pick_date_dialog_title);
final DatePicker datePickerDialogSpinner = (DatePicker) view.findViewById(R.id.views_form_pick_date_dialog_spinner);
datePickerDialogSpinner.updateDate(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
datePickerDialog.setView(view);
datePickerDialog.show();
关联的 XML 布局:
R.layout.views_form_pick_date_dialog_day
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.AppCompatTextView style="@style/TextViewBody"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/style_size_space_medium"
android:background="@color/style_color_red"
android:text="@string/app_name"
android:id="@+id/views_form_pick_date_dialog_title" />
<DatePicker
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/views_form_pick_date_dialog_title"
android:calendarViewShown="false"
android:datePickerMode="spinner"
android:id="@+id/views_form_pick_date_dialog_spinner" />
</RelativeLayout>
感谢您的帮助。
最佳答案
设置日期选择器的样式
<style name="datepicker" parent="Theme.AppCompat.Light.Dialog">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/primary</item>
</style>
关于Android:某些设备上的 DatePicker 微调器文本颜色为白色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48827503/