我有一个带layout_width="wrap_content"
的简单EditText。属性中没有填充或边距。这是一个完整的例子:
<EditText
android:id="@+id/maskPrefix"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="3"
android:inputType="text|textCapCharacters|textNoSuggestions"
android:maxLength="5"
android:maxLines="1"
android:nextFocusDown="@+id/maskNum"
android:text="GA"
android:textSize="18sp"
tools:ignore="LabelFor" />
一切都很好但是......但是:
如果我删除android:ems
并通过android:maxLength
设置最大宽度,那么一切都是合适的宽度。但我需要两个属性。
为什么我的EditText
宽度错了?这个神秘倍增器有什么用?我使用Theme.AppCompat.Light.NoActionBar
,最新的android studio(2.2.2)并使用
compile "com.android.support:support-v4:25.0.1"
compile 'com.android.support:appcompat-v7:25.0.1'
在Nexus 5中使用Android 6进行测试。
什么选项或属性会让android:ems
如此糟糕?
UPD 即可。链接到this question无法以任何方式解决我的问题。此外,设置android:textSize
和android:ems
是绝对正确的。我希望我的文字字母 x sp大,我希望我的EditText
y 字符宽。