Каков размер текста по умолчанию на Android?

У меня есть смесь кнопок и собственный вид, где я устанавливаю размер текста с помощью Paint.setTextSize(). Я хочу, чтобы размер текста выглядел так же, как текст на кнопке. Теперь я могу, конечно, установить размер текста кнопки, например, 18sp, и использовать 18 в моем представлении. Но для лучшей интеграции я просто хотел бы знать, какой размер текста является "нормальным" для кнопок. Из моего теста это должно быть что-то вроде 12sp, но я не нашел никакой документации по этому поводу.

оставить значение по умолчанию размеры оставляет слишком маленький текст на представлении.

может быть, мне следует использовать еще один подход к этой проблеме?

8 ответов


это вернет размер текста по умолчанию на кнопке в пикселях.

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

В общем:

три значения textSize по умолчанию:

 - 14sp
 - 18sp
 - 22sp

эти значения определены в пределах следующих TextAppearances:

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

более подробную информацию о типографии можно найти в правила разработки

по вашему вопросу:

если вы не установите пользовательский textSize или textAppearance,TextAppearance.Маленький будет использоваться.


Обновление: Материал дизайн:

новая рекомендации связанные с шрифтом и шрифтами. Остается стандартное правило 14sp (body).

примеры, как установить textappearances

версия AppCompat:

android: textAppearance= " @style / TextAppearance.Совместимости приложений.Тело"

Lollipop и версию:

android: textAppearance= " @android: стиль / TextAppearance.Материал.Тело"


похоже, кто-то еще нашел это: какие характеристики шрифта по умолчанию в Android ?

там кто-то обнаружил размер текста по умолчанию для TextViews (которые используют TextAppearance.Маленький) это 14sp.


значения по умолчанию в 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

вы можете найти стандартные размеры для всего в Google гид по стилю.

вот значения, которые они используют для кнопок:

кнопки

английский: средний 14sp, все шапки

плотный: средний 15sp, все колпачки

высокий: жирный 15sp


размер текста по умолчанию textview

Если вы не использовали любой из ниже

TextAppearance.Маленький

TextAppearance.Средний

TextAppearance.Большой

тогда размер по умолчанию-14sp


размер текста по умолчанию варьируется от устройства к устройствам

Тип Размер Micro 12 sp Малый 14 sp Средний 18 sp Большой 22 sp