Что подразумевается под Ems? (Android TextView)

304

Что подразумевается под Ems (относится к TextView)? Например в

android:ems     setEms(int)

Делает TextView таким же широким.

Addev
источник
1
Во всяком случае, хорошо бы взглянуть на Google, прежде чем спросить здесь: ответ на лучшие результаты, если вы введете «EMS Android».
Алексис Метайро
Да, я искал некоторые термины и не использовал ключевое слово "android". Спасибо всем за ответы
Addev

Ответы:

394

android:emsили setEms(n)устанавливает ширину TextView, чтобы соответствовать тексту из n 'M' букв, независимо от фактического расширения текста и размера текста. Смотрите википедию Em блок

но только когда layout_widthдля "wrap_content". Другие layout_widthзначения отменяют настройку ширины ems.

Добавление android:textSizeатрибута определяет физическую ширину представления к textSize * длина текста n 'M, указанного выше.

Габриэль Риба
источник
25
Почему мой EditText может содержать 17 букв "M", хотя я установил его на 10 ems? У меня есть три EditText в горизонтальной LinearLayout, и все они установлены на «wrap_content»
stefan
установить minEms и maxEms
Bincy Baby
58

Ems - это типографский термин, он определяет размер текста и т. Д. Проверьте здесь

Джим
источник
6
Он соотносит размер текста с размерами других вещей.
маркиз Лорн
29

Это ширина буквы М в данном размере английского шрифта.
Таким образом, 2em в два раза больше ширины буквы M в данном шрифте.
Для неанглийского шрифта это ширина самой широкой буквы в этом шрифте. Этот размер ширины в пикселях отличается от размера ширины буквы M в английском шрифте, но все равно равен 1em .
Поэтому, если я использую текст с 12sp на английском шрифте, 1em относится к этому английскому шрифту на 12sp; использование итальянского шрифта с 12sp дает 1em, который отличается по ширине пикселей от английского.

Ярон Ронен
источник
6

em - типографская единица ширины шрифта. один из них в 16-точечном шрифте составляет 16 очков

NaveenDA
источник
3

ems - это единица измерения

Имя эм была первоначально ссылка на ширину от буквы М . Он устанавливает ширину TextView / EditText, чтобы соответствовать тексту из n 'M' букв, независимо от фактического расширения текста и размера текста.

Например:

android:ems Делает EditText точно таким же шириной.

<EditText
    android:ems="2"
/>

обозначает в два раза больше ширины буквы М.

Преетиш Приядарши Самал
источник
0

em это в основном CSS свойство для размеров шрифта.

Единицы em и ex зависят от шрифта и могут отличаться для каждого элемента в документе. Это просто размер шрифта. В элементе со шрифтом 2in 1em означает 2in. Выражение размеров, таких как поля и отступы, в em означает, что они связаны с размером шрифта, и если пользователь имеет большой шрифт (например, на большом экране) или маленький шрифт (например, на портативном устройстве), размеры будут пропорциональны. Объявления, такие как text-indent: 1.5em и margin: 1em, чрезвычайно распространены в CSS.

Источник: https://www.w3.org/Style/Examples/007/units.

Рехан Сарвар
источник