Как получить прозрачный ImageButton: Android

<ImageButton android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/media_skip_backward"
android:background="@drawable/transparent"></ImageButton>

Вот что я пытался получить прозрачным ImageButton, чтобы поместить эти кнопки в SurfaceView. Но Eclipse дает мне ошибку в проекте, как только я включаю прозрачную строку в xml.

Пожалуйста, помогите.

Ответ 1

Попробуйте использовать значение null для фона...

android:background="@null"

Ответ 2

НЕ ИСПОЛЬЗУЙТЕ ТРАНСФЕРНЫЙ ИЛИ NULL LAYOUT, потому что тогда кнопка (или общий вид) больше не будет выделяться при щелчке мышью!!!

У меня была такая же проблема, и, наконец, я нашел правильный атрибут из Android API, чтобы решить эту проблему. Он может применяться к любому виду.

Используйте это в настройках кнопки:

android:background="?android:selectableItemBackground"

Ответ 3

Вы также можете использовать прозрачный цвет:

android:background="@android:color/transparent"

Ответ 4

Настройка фона на "@null" приведет к тому, что кнопка не будет действовать при нажатии. Это будет лучший выбор.

style="?android:attr/borderlessButtonStyle"

Позже я обнаружил, что используя

android:background="?android:attr/selectableItemBackground"

также является хорошим решением. И вы можете наследовать этот атрибут в своем собственном стиле.

Ответ 5

во время выполнения, вы можете использовать следующий код

btn.setBackgroundDrawable(null);

Ответ 6

Я считаю, что принятый ответ должен быть: android:background="?attr/selectableItemBackground"

Это то же самое, что и ответ @lory105, но он использует библиотеку поддержки для максимальной совместимости (эквивалент android: доступен только для API >= 11)

Ответ 7

Удалите эту строку:

android:background="@drawable/transparent">

И в вашем классе активности

ImageButton btn = (ImageButton)findViewById(R.id.previous);
btn.setAlpha(100);

Вы можете установить альфа-уровень от 0 до 255

o означает прозрачность и 255 означает непрозрачность.

Ответ 8

Лучший способ - использовать прозрачный цветовой код

android:background="#00000000"

используйте цветовой код # 00000000 для создания прозрачной вещи

Ответ 9

Используйте ImageView... по умолчанию прозрачный фон...

Ответ 10

Используйте это:

<ImageButton
 android:id="@+id/back"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:background="@null"
 android:padding="10dp"
 android:src="@drawable/backbtn" />

Ответ 11

Просто используйте этот код в файле .java:

ImageButton btn = (ImageButton) findViewById(R.id.ImageButton01);
btn.setBackgroundColor(Color.TRANSPARENT);

Ответ 12

Установите фон ImageButton как @null в XML

<ImageButton android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/media_skip_backward"
android:background="@null"></ImageButton>

Ответ 13

Используйте "@null" . Это сработало для меня.

<ImageButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:srcCompat="@drawable/bkash"
    android:id="@+id/bid1"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:background="@null" />

Ответ 14

Это android:background="@android:color/transparent"

<ImageButton
    android:id="@+id/imageButton"
    android:src="@android:drawable/ic_menu_delete"
    android:background="@android:color/transparent"
/>

Ответ 15

Я уже что-то добавлял в фон, так что у меня это сработало:

   android:backgroundTint="@android:color/transparent"

(Android Studio 3.4.1)

РЕДАКТИРОВАТЬ: работает только на Android API уровня 21 и выше. для совместимости используйте это вместо

   android:background="@android:color/transparent"

Ответ 16

Программно можно выполнить:

image_button.setAlpha(0f) // to make it full transparent
image_button.setAlpha(0.5f) // to make it half transparent
image_button.setAlpha(0.6f) // to make it (40%) transparent
image_button.setAlpha(1f) // to make it opaque

Ответ 17

Это программно задается цвет фона как прозрачный

 ImageButton btn=(ImageButton)findViewById(R.id.ImageButton01);
 btn.setBackgroundColor(Color.TRANSPARENT);

Ответ 18

В вашем XML-атрибуте Background для любого оттенка цвета White(#FFFFFF) или Black(#000000) shade.if вы хотите, чтобы прозрачность просто помещала 80 до фактического хеш-кода.

#80000000   

Ответ 19

<ImageButton
    android:id="@+id/previous"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/media_skip_backward">
</ImageButton>

Я использовал прозрачный png для ImageButton, а ImageButton работал.