我意识到在某些设备上我的DatePicker
的微调器没有显示,因为文本是白色而不是黑色(应该是)。
以荣誉5C为例:
使用One Plus 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>
感谢您的帮助。
答案 0 :(得分:0)
只需执行以下操作即可更改datePicker textColor:
<DatePicker
android:id="@+id/start_date_text"
android:layout_width="400dp"
android:layout_height="190dp"
android:datePickerMode="spinner"
android:calendarViewShown="false"
style="@style/MyDatePicker" />
和风格
<style name="MyDatePicker" parent="android:Widget.Material.Light.DatePicker">
<item name="android:textColorPrimary">@color/Black</item>
</style>
答案 1 :(得分:0)
设置日期选择器的样式
<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>
答案 2 :(得分:0)
试试这个,
将此作为您的活动样式。
<style parent="Theme.AppCompat.Light.NoActionBar" name="MyActivityTheme">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:textColor">@color/black</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorPrimary">@color/black</item>
</style>
并在您的清单中将其添加为您的活动主题。
<activity
android:name="yourActivity"
android:theme="@style/MyActivityTheme"/>
它可能对你有所帮助。