Проблема с границами при изменении высоты EditText - PullRequest
1 голос
/ 02 февраля 2011

Я разрабатываю приложение для Android, ориентированное на Android 2.3 (API9).

Я хочу изменить высоту простого EditText, но когда я устанавливаю android:layout_height="10pt", граница EditText становитсяdislocated.

Проблема показана здесь

enter image description here

Я пробовал layout_height, height, textize .. pt, px, sp ... но та же проблема.

Я еще не пробовал приложение на реальном устройстве.

Ответы [ 2 ]

1 голос
/ 02 февраля 2011

Какой макет содержит EdiText?Никогда не следует использовать точные размеры пикселей при настройке элементов в Android, поскольку ваш макет должен работать должным образом при разных размерах экрана и плотности.(Подробнее см. с поддержкой нескольких экранов ).

Если вы действительно хотите определенного размера, используйте dp для пикселей, независимых от плотности.Это должно работать для установки layout_height="10dp" Однако это не увеличит размер текста в EditText.Для этого вам нужно использовать textSize.Возможно, вам лучше установить textSize и задать layout_height="wrap_content".

См. аналогичный вопрос о дополнительной строке.Похоже, что установка цвета фона может исправить это.

0 голосов
/ 16 февраля 2011

У меня была такая же проблема (и это настоящая боль).Проведя некоторые эксперименты, я обнаружил, что если вы используете «dp» и применяете это правило, оно должно работать для полей EditText.

textSize x 3 = layout_height

Я говорю эмпирическое правило, потому чтоминимальная высота до того, как поле снова «сломается», составляет около 29 дп.Так, например, если у вас есть textSize = "10dp", то layout_height = "30dp" или textSize = "12dp", тогда layout_height = "36dp".Вы можете иметь меньшие размеры textSizes, но он становится нечитаемым ниже, чем 9dp.Я обнаружил, что это хорошо работает вlative_layouts со шрифтами по умолчанию.Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...