天天看點

android中的ems的真正含義

​android​

​​開發中經常會看到一個屬性叫做​

​ems​

​​ 很多人說這是能輸入的最大長度

但是這是不準确的,不信你可以試試,​

​ems=10​

​的時候,說不定你可以輸入十幾個字元

那麼他的含義究竟是什麼?

其實很簡單,如果你做過前端,你應該會知道​

​em​

​ 前端的​

​em​

​是以目前上下文的字型大小來對字型大小進行設定的一種相對值

這裡的​

​em​

​和前端的​

​em​

​不同

不賣關子了,其實這個​

​ems=10​

​​,意思就是說,一行占據的空間=​

​10個M​

​​占據的空間。

不是​​

​10​

​​兆,是十個字元​

​‘M’​

​​所占據的空間

相信大家都會承認​​

​M​

​​占據的寬度比​

​i​

​​要寬的多吧,是以​

​ems=10​

​​時可能一行能夠顯示的字元不止​

​10​

​​個

也是以,​​

​width​

​​就要設定為​

​wrap-content​

​​了,否則​

​match-parent​

​的時候,寬度就太寬了,那麼這個屬性也就沒作用了。