我有一些按钮和一个自定义视图,我使用Paint.setTextSize()设置文本大小。我希望文本大小看起来与按钮上的文本大小相同。现在,我当然可以将按钮的文本大小设置为例如18sp,并在我的视图中使用18。但为了更好地集成,我想知道“普通”按钮的文本大小是多少。根据我的测试,它应该是类似于12sp的大小,但我没有找到任何相关文档。
保留默认大小会导致视图上的文本过小。
也许我应该采取另一种方法来解决这个问题?
我有一些按钮和一个自定义视图,我使用Paint.setTextSize()设置文本大小。我希望文本大小看起来与按钮上的文本大小相同。现在,我当然可以将按钮的文本大小设置为例如18sp,并在我的视图中使用18。但为了更好地集成,我想知道“普通”按钮的文本大小是多少。根据我的测试,它应该是类似于12sp的大小,但我没有找到任何相关文档。
保留默认大小会导致视图上的文本过小。
也许我应该采取另一种方法来解决这个问题?
有三个“默认”文本大小值:
- 14sp
- 18sp
- 22sp
这些值在下列TextAppearances中定义:
- TextAppearance.Small
- TextAppearance.Medium
- TextAppearance.Large
有关排版的更多信息可以在设计指南中找到。
如果您没有设置自定义textSize或textAppearance,则会使用TextAppearance.Small。
与字体和字形相关的新指南。标准14sp规则仍然适用于(正文)。
如何设置文字外观的示例
AppCompat版本:
android:textAppearance="@style/TextAppearance.AppCompat.Body"
Lollipop及更高版本:
android:textAppearance="@android:style/TextAppearance.Material.Body"
12sp
用于 Micro
。 - Ram Patra看起来有其他人找到了这个答案:Android 中的默认字体特征是什么?
在那里,有人发现 TextView 的默认文本大小为 14sp(使用 TextAppearance.Small)。
这将返回按钮上文本的默认大小(以像素为单位)。
val size = Button(this).textSize
float size = new Button(this).getTextSize();
appcompat-v7中的默认值
<dimen name="abc_text_size_body_1_material">14sp</dimen>
<dimen name="abc_text_size_body_2_material">14sp</dimen>
<dimen name="abc_text_size_button_material">14sp</dimen>
<dimen name="abc_text_size_caption_material">12sp</dimen>
<dimen name="abc_text_size_display_1_material">34sp</dimen>
<dimen name="abc_text_size_display_2_material">45sp</dimen>
<dimen name="abc_text_size_display_3_material">56sp</dimen>
<dimen name="abc_text_size_display_4_material">112sp</dimen>
<dimen name="abc_text_size_headline_material">24sp</dimen>
<dimen name="abc_text_size_large_material">22sp</dimen>
<dimen name="abc_text_size_medium_material">18sp</dimen>
<dimen name="abc_text_size_menu_material">16sp</dimen>
<dimen name="abc_text_size_small_material">14sp</dimen>
<dimen name="abc_text_size_subhead_material">16sp</dimen>
<dimen name="abc_text_size_subtitle_material_toolbar">16dp</dimen>
<dimen name="abc_text_size_title_material">20sp</dimen>
<dimen name="abc_text_size_title_material_toolbar">20dp</dimen>
http://petrnohejl.github.io/Android-Cheatsheet-For-Graphic-Designers/
Text size
Type Dimension
Micro 12 sp
Small 14 sp
Medium 18 sp
Large 22 sp
如果您没有使用以下任何一个:
TextAppearance.Small
TextAppearance.Medium
TextAppearance.Large
那么默认大小为14sp。
默认文本大小因设备而异
类型 尺寸 微型 12 sp 小型 14 sp 中型 18 sp 大型 22 sp
在2022年12月的Android Studio中,当您删除字体大小时,在开发应用程序时出现的默认大小为14sp。
使用SP有助于设备兼容性。 另一方面,字体大小为14,即较小,这是一个优点,因为它不会在具有大字体的小型设备上出现适配问题。