EditText Высота вопроса - PullRequest
       21

EditText Высота вопроса

3 голосов
/ 05 декабря 2010

Я пытаюсь установить меньшую высоту EditText, но до сих пор не удалось. Вот мой источник:

<EditText android:layout_width="150dp" android:layout_height="20dp"
      android:singleLine="true" android:textSize="10dp" />

Этот код обрезает текст, и вокруг элемента управления EditText появляется белая прямоугольная фигура. Я также пробовал свойства maxHeight / minHeight, но тоже не сработало. Если кто-нибудь решил эту проблему, пожалуйста, помогите.

Или это ошибка в андроиде? Я даже не могу изменить размер Spinner, происходит то же самое, что и с EditText.

Спасибо

Ирфан

1 Ответ

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

Вы, вероятно, видите странные оранжевые прямоугольные формы внутри поля при тестировании в эмуляторе?

Если так, то мне удалось выработать базовое правило для настройки размера. Ваш textSize должен быть немного больше. Попробуйте 30dp.

С некоторыми экспериментами я обнаружил, что если вы используете "dp" и применяете это правило, оно должно работать для полей EditText.

textSize x 3 = layout_height

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

...