2011-08-13 22 views
242

Ems(与TextView相关)的含义是什么?例如,在Ems是什么意思? (Android TextView)

android:ems  setEms(int) 

使TextView的是正是这一点很多EMS宽。

+2

http://en.wikipedia.org/wiki/Em_(typography) – arunkumar

+1

无论如何,在问这里之前,看看谷歌是很好的:如果你输入“ems android”,答案就是最高结果。 –

+0

是的我搜索了一些条款没有使用“安卓”关键字,感谢所有您的答案 – Addev

回答

334

android:emssetEms(n)设置TextView的宽度以适合n'M'字母的文本,而不管实际的文本扩展名和文本大小如何。请参阅wikipedia Em unit

但只有当layout_width设置为"wrap_content"时。其他layout_width值覆盖ems宽度设置。

添加android:textSize属性确定视图的物理宽度为上面设置的n'M的文本的textSize *长度。

+15

为什么我的EditText可以有17个“M”字母,即使我将它设置为10ems?我在一个水平的LinearLayout中有三个EditText,并且它们全部设置为“wrap_content” – stefan

+0

set minEms和maxEms –

+0

为什么需要ems? – 2017-03-24 18:41:00

57

EMS是凸版印刷术语,它控制文本大小等检查here

+4

它*文字大小与其他事物的大小有关。 – EJP

22

它是给定英文字体大小的字母M的宽度。 所以2em是给定字体中字母M宽度的两倍。 字体与英文不同,它是此字体中最宽的字母的宽度,此宽度是以像素为单位的不同大小,然后是英文字体M中的宽度大小,但它仍为1em。 因此,如果我使用12sp英文字体的文本1em是相对于此12sp英文字体,使用意大利字体与12sp给1em是不同的像素宽度然后英文的。

-4

TextView的EMS意思

在TextView中有一个名为Android的属性:EMS。说明 是“让TextView的是正是这一点很多EMS宽”

注:但只有当layout_width设置为“WRAP_CONTENT”。其他layout_width值覆盖ems宽度设置。

+2

这一直是我见过的最无用的答案。 – hasen

5

em是字体宽度的排版单位。 16点字体中的一个是16点

0

em基本上是字体大小的CSS属性。

em和ex单位取决于字体,并且可能对文档中的每个 元素都不相同。 em只是字体大小。在使用2in字体的元素 中,1em意味着2in。在em中表示大小(例如边距 和填充)意味着它们与字体大小相关,并且如果用户在手持设备上具有大字体(例如,在大屏幕上)或小字体(例如, ),尺寸将成比例。声明 如text-indent:1.5em和margin:1em在 CSS中非常常见。

来源:https://www.w3.org/Style/Examples/007/units

0

EMS是测量

EM原是参照大写M的宽度名称的单元。它将TextView/EditText的宽度设置为适合n'M'字母的文本,而不管实际的文本扩展名和文本大小。

如:

android:ems使EditText上是完全这么多的EMS宽。

<EditText 
    android:ems="2" 
/> 

表示创建字母M宽度的两倍。