Как растянуть изображение в кнопке с изображением на всю область кнопки изображения?
Вот изображение, которое поможет вам понять мою проблему:
![It's a "1"]()
Я хочу растянуть изображение, показанное внутри ImageButton
, на всю область ImageButton
.
Как вы можете видеть, изображение с номером 1 занимает примерно 95% от ImageButton
, и вы также можете видеть границы ImageButton
.
Я все еще хочу сохранить стиль кнопки изображения
Вот как я использую ImageView:
<ImageButton
android:id="@+id/secondActivityBbuttonDownRight"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:scaleType="fitStart"
android:src="@drawable/111" />
Я думаю, что узнал, в чем моя проблема.
Мне нужен пользовательский компонент, который может содержать только изображение и иметь эффект щелчка.
Ответы
Ответ 1
ImageButton - ImageView.
Если вы хотите, чтобы ваше изображение заполнило кнопку
чем установить android:scaleType="fitXY"
, поэтому изображение, установленное в android:src
, будет растянуто, чтобы заполнить кнопку полного изображения.
ImageButton имеет фон под вашим изображением и дополнением.
Если вы не хотите, чтобы фон
set android:background="@android:color/transparent"
.
Если вы не хотите заполнять
установите android:padding="0"
или установите фон без заполнения.
Ответ 2
Вы также можете использовать
android:scaleType="centerCrop"
android:padding="0dp"
Ответ 3
Используйте ниже код: -
<ImageButton
android:id="@+id/secondActivityBbuttonDownRight"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:scaleType="fitStart"
android:background="@drawable/111" />
Ответ 4
Вам следует подумать о создании изображения с 9 патчами, чтобы изображение правильно соответствовало ImageButton
, если вам нужно его растянуть, но вы не хотите, чтобы изображение искажалось.
Чтобы иметь кнопку с полностью закрытым изображением, вы можете использовать что-то вроде этого:
<ImageButton android:id="@+id/iconBtn"
android:layout_width="64dip"
android:layout_height="64dip"
android:src="@drawable/icon_button"
android:scaleType="fitCenter"
android:background="#00000000"/>
Для полного руководства по созданию кнопок с пользовательскими скинами и использованию селекторов для управления их состояниями вы можете проверить учебник, который я написал некоторое время назад здесь (Создание пользовательской кнопки Android с изменяемым размером).
Ответ 5
android:scaleType="fitXY"
протестирован и работает правильно.
Ответ 6
Если ваше изображение "111" не имеет прокладки, просто используйте андроид: фон "@drawable/111"