Ответ 1
Я хочу установить максимальную ширину окна редактирования.
В вашем примере:
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10" />
Атрибуты layout_width
и ems
пытаются установить одно и то же значение. Android, похоже, выбирает большее значение fill_parent
и игнорирует другое. И когда вы используете это:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:maxWidth="50dp"
android:minWidth="50dp" />
Здесь ems
и maxWidth
пытаются установить одно и то же значение, снова используется большее значение. Поэтому в зависимости от того, что вы действительно хотите, вы можете использовать:
<EditText
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10" />
или замените android:ems="10"
на android:maxWidth="50dp"
, если вы предпочитаете работать с dp.
Наконец, у вашего LinearLayout только один ребенок, EditText. Обычно, когда это происходит, вы можете удалить теги LinearLayout и сами использовать EditText.