Итак, я определил простой Button
в xml вот так:
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:layout_margin="5dp"
android:gravity="center"
android:text="@string/home_button_student"
android:textSize="@dimen/abc_text_size_headline_material"
android:onClick="buttonClick"
android:id="@+id/home_button_student"
android:drawableLeft="@drawable/ic_action_emo_cool"/>
У меня их несколько в LinearLayout
, и, как и ожидалось, они заполняют экран, каждый из которых занимает одинаковое количество места, и каждый выглядит примерно так: http://i.imgur.com/fMNldop.jpg
Проблема, с которой я столкнулся, заключается в том, что, как вы можете видеть, высота для рисования равна высоте текста, я хотел бы знать, есть ли способ сделать масштабирование для рисования на высоту самой кнопки БЕЗ использования обходного пути, например создав свою собственную кнопку с использованием другого LinearLayout
, я бы хотел придерживаться использования Button
.
У меня есть разные версии изображения в моей папке res в правильных папках (xxhdpi, xhdpi и т. Д.), Но кажется, что он хочет использовать только самый маленький.
РЕДАКТИРОВАТЬ: Похоже, это может быть из-за того, что предоставленное изображение слишком маленькое, как я сказал чуть выше, у меня есть изображение во всем диапазоне размеров, как я могу сказать Android, чтобы он использовал большее изображение на большом экране вместо значения по умолчанию к меньшему? Я подумал, что в этом весь смысл наличия нескольких размеров.
3 ответа
Drawable будет иметь только размер растрового изображения. Просто предоставьте изображение большего размера, и все будет в порядке.
Вы можете использовать свой собственный макет для этого, например, рисовать влево или вправо, что вы хотите, просто используйте линейный макет, помещенный в это изображение и кнопку для просмотра. чтобы вы могли поместить изображение, которое хотите
Для этого вам нужно изменить layout_height с fill_parent на wrap_content, как это
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:gravity="center"
android:text="@string/home_button_student"
android:textSize="@dimen/abc_text_size_headline_material"
android:onClick="buttonClick"
android:id="@+id/home_button_student"
android:drawableLeft="@drawable/ic_action_emo_cool"/>
Если вы хотите, чтобы кнопка была действительно большой по высоте, убедитесь, что у вас есть изображение с одинаковым размером высоты, доступное для рисования, а также нет необходимости указывать здесь вес,
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.