如何在日期选择器对话框中更改年份和摘要文本大小 android
How to change the year and summary text size in date picker dialog android
我已经设置了
<item name="android:textSize">12sp</item>
采用应用 [AppTheme] 的风格。
因此,日期选择器对话框 中的年份标签和摘要标签变小了。我正在尝试编辑它们的大小。
我尝试了 Whosebug 中的各种解决方案。但是,none 其中对我有用。相反,日历覆盖了整个屏幕。请帮我解决这个问题。
您可以像这样为日期选择器使用自定义主题
<style name="DialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="colorAccent">@color/colorPrimary</item>
<item name="android:textSize">25sp</item>
</style>
你的日期选择器对话框是这样的
new DatePickerDialog(MapActivity.this, R.style.DialogTheme, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
//DO SOMETHING
}
}, 2019, 11, 25).show();
在日期时间选择器中,您可以控制三件事。 header中的年份文字,年份下方的日期。最后是按钮(取消和确定)。
要更改按钮大小和字体,只需像这样编辑您的内容:
<style name="datepicker_dialog" parent="Theme.AppCompat.Light.Dialog">
<item name="android:colorAccent">@color/black_000</item>
<item name="android:colorControlActivated">@color/black</item>
<item name="android:textSize">14sp</item>
<item name="fontFamily">@font/yourFont</item>
<item name="android:textAllCaps">false</item>
</style>
要更改年份和日期的字体和大小,您必须跳转到定义 DatePickerDialog 的代码:
val dialog = DatePickerDialog(activity, this,
params[0],
params[1],
params[2])
val baseLayout = dialog.datePicker.getChildAt(0) as LinearLayout
val childLayout = baseLayout.getChildAt(0) as LinearLayout
val titleLayout = childLayout.getChildAt(0) as LinearLayout
val dayText = titleLayout.getChildAt(1) as TextView
dayText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20f)
dayText.typeface = ResourcesCompat.getFont(activity, R.font.yourFont)
val yearText = titleLayout.getChildAt(0) as TextView
yearText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 12f)
yearText.typeface = ResourcesCompat.getFont(activity, R.font.yourFont)
dialog.show()
我已经设置了
<item name="android:textSize">12sp</item>
采用应用 [AppTheme] 的风格。
因此,日期选择器对话框 中的年份标签和摘要标签变小了。我正在尝试编辑它们的大小。
我尝试了 Whosebug 中的各种解决方案。但是,none 其中对我有用。相反,日历覆盖了整个屏幕。请帮我解决这个问题。
您可以像这样为日期选择器使用自定义主题
<style name="DialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="colorAccent">@color/colorPrimary</item>
<item name="android:textSize">25sp</item>
</style>
你的日期选择器对话框是这样的
new DatePickerDialog(MapActivity.this, R.style.DialogTheme, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
//DO SOMETHING
}
}, 2019, 11, 25).show();
在日期时间选择器中,您可以控制三件事。 header中的年份文字,年份下方的日期。最后是按钮(取消和确定)。
要更改按钮大小和字体,只需像这样编辑您的内容:
<style name="datepicker_dialog" parent="Theme.AppCompat.Light.Dialog">
<item name="android:colorAccent">@color/black_000</item>
<item name="android:colorControlActivated">@color/black</item>
<item name="android:textSize">14sp</item>
<item name="fontFamily">@font/yourFont</item>
<item name="android:textAllCaps">false</item>
</style>
要更改年份和日期的字体和大小,您必须跳转到定义 DatePickerDialog 的代码:
val dialog = DatePickerDialog(activity, this,
params[0],
params[1],
params[2])
val baseLayout = dialog.datePicker.getChildAt(0) as LinearLayout
val childLayout = baseLayout.getChildAt(0) as LinearLayout
val titleLayout = childLayout.getChildAt(0) as LinearLayout
val dayText = titleLayout.getChildAt(1) as TextView
dayText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20f)
dayText.typeface = ResourcesCompat.getFont(activity, R.font.yourFont)
val yearText = titleLayout.getChildAt(0) as TextView
yearText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 12f)
yearText.typeface = ResourcesCompat.getFont(activity, R.font.yourFont)
dialog.show()