Android上的默认文字大小是多少?


139

我混合了Button和自己的View,在其中使用Paint.setTextSize()设置文本大小。我希望文本大小看起来像按钮上的文本一样。现在,我当然可以将按钮的文本大小设置为例如18sp,并在我的视图中使用18。但是,为了更好地集成,我只是想知道按钮的“正常”文本大小是多少。根据我的测试,它应该类似于12sp,但是我还没有找到任何文档。

保留默认大小会使视图上的文本太小。

也许我应该使用另一种方法来解决这个问题?


1
好吧,似乎还不清楚。所以我选择16sp。这看起来足够好,但又不会太小(我已经需要眼镜或HTC HD了:-)顺便说一下,要缩放图形的字体,需要首先使用float scale = getContext()查找设备的缩放比例。 ).getResources()。getDisplayMetrics()。density; 将此值乘以所需的sp文本大小,然后使用Paint.setTextSize设置大小。
Rene


在网络上搜索abc_text_size_medium_material(标准尺寸尺寸之一)会从App Compat中获得材料尺寸XML文件,其中包含所有标准尺寸。
理查德·勒·马修里尔

Answers:


42

这将返回按钮上文本的默认大小(以像素为单位)。


科特林

val size = Button(this).textSize


爪哇

float size = new Button(this).getTextSize();

204

一般来说:

三个“默认” textSize值:

 - 14sp
 - 18sp
 - 22sp

这些值在以下TextAppearances中定义:

 - TextAppearance.Small
 - TextAppearance.Medium
 - TextAppearance.Large

有关印刷术的更多信息,请参见设计指南。

与您的问题有关:

如果您未设置自定义textSize或textAppearance,则将使用TextAppearance.Small


更新:材料设计:

与字体和字体有关的新准则。14sp的标准规则仍然是(主体)。

示例如何设置文字外观

AppCompat版本:

android:textAppearance =“ @ style / TextAppearance.AppCompat.Body”

棒棒糖及更高版本:

android:textAppearance =“ @ android:style / TextAppearance.Material.Body”


1
想要添加到上面的列表,12spMicro
Ram Patra 2014年

2
另一方面,TextApperance.Micro实际上是不存在的。看到这个问题
Andrew T.

1
有趣的是,即使在Material主题中,小/中/大尺寸仍然是14/18/22,即使根据Material印刷指南,18和22不是标准尺寸。大概是为了向后兼容。
卡斯滕


18

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>


3

您可以在Google的样式指南中找到所有尺寸的标准尺寸

以下是它们用于按钮的值:

纽扣

英语:中等14sp,全大写

密集:中等15分,全部加盖

高:大胆15sp


2

textview的默认文本大小

如果您不使用以下任何一项

TextAppearance.Small

TextAppearance.Medium

TextAppearance.Large

那么默认大小是14sp


0

默认文本大小因设备而异

类型尺寸微型12 sp小14 sp中18 sp大22 sp

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.