TimePickerDialog:更改小时/分钟文本大小

问题描述 投票:0回答:1

我想将以下时间的字体更改为42sp。 TimePickerDialog可以更改字体大小吗?

java android android-layout android-view android-timepicker
1个回答
0
投票

TimePickerDialognot设计的一种方式,可以允许客户端更改字体大小。因此,强烈建议不要这样做。

不过,如果出于某些特定原因需要这样做,则可以遵循以下棘手且不可靠的方法:

      val mTimePickerField = TimePickerDialog::class.java.getDeclaredField("mTimePicker")
      mTimePickerField.isAccessible = true

      val mTimePicker = mTimePickerField.get(timePickerDialog) as TimePicker
      val hours: TextView? = mTimePicker.findViewById(resources.getIdentifier("android:id/hours", "id", packageName))
      val separator: TextView? = mTimePicker.findViewById(resources.getIdentifier("android:id/separator", "id", packageName))
      val minutes: TextView? = mTimePicker.findViewById(resources.getIdentifier("android:id/minutes", "id", packageName))

      hours?.textSize = 12f
      separator?.textSize = 12f
      minutes?.textSize = 12f

这是您将得到的:

[time_picker_header_material.xmltime_picker_header_material.xml将膨胀的实际标题布局,因此您可以使用与小时/分隔符/分钟相同的方法来根据需要增强am / pm字段。

© www.soinside.com 2019 - 2024. All rights reserved.