<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>
Inilah yang saya coba dapatkan ImageButton transparan untuk menempatkan tombol-tombol itu pada SurfaceView. Tapi Eclipse, memberi saya kesalahan dalam proyek segera setelah saya memasukkan garis transparan di xml.
Tolong bantu.
android
transparent
imagebutton
surfaceview
Namratha
sumber
sumber
Jawaban:
Coba gunakan nol untuk latar belakang ...
sumber
SurfaceView
Seharusnya memungkinkan Anda untuk blace tombol Anda di atas permukaan tetapi perhatikan: "Ini dapat digunakan untuk menempatkan overlay seperti tombol di atas Permukaan, meskipun bagaimanapun perhatikan bahwa hal itu dapat berdampak pada kinerja sejak alpha-blended penuh komposit akan dilakukan setiap kali perubahan permukaan. " dari developer.android.com/reference/android/view/SurfaceView.htmlJANGAN GUNAKAN TRANSAPEN ATAU LAYOUT NULL karena dengan begitu tombol (atau tampilan umum) tidak akan lagi disorot di klik !!!
Gunakan ini dalam spesifikasi tombol:
sumber
android:background="?android:selectableItemBackgroundBorderless"
Anda juga dapat menggunakan warna transparan:
sumber
Developer option: Show GPU overdraw
dan melihat perbedaan antara pengaturan latar belakang ke@null
dan@android:color/transparent
.Pengaturan latar belakang
"@null"
akan membuat tombol tidak berpengaruh ketika diklik. Ini akan menjadi pilihan yang lebih baik.Kemudian saya menemukan itu menggunakan
juga merupakan solusi yang bagus. Dan Anda dapat mewarisi atribut ini dengan gaya Anda sendiri.
sumber
selectableItemBackground
memiliki manfaat tambahan untuk membuat status perubahan tombol ketika diklik. Solusi lain membuat tombol tampak tidak dapat diklik.dalam waktu berjalan, Anda dapat menggunakan kode berikut
sumber
Saya percaya jawaban yang diterima seharusnya:
android:background="?attr/selectableItemBackground"
Ini sama dengan jawaban @ lory105 tetapi menggunakan pustaka dukungan untuk kompatibilitas maksimum (yang
android:
setara hanya tersedia untuk API> = 11)sumber
Hapus baris ini:
Dan di set kelas aktivitas Anda
Anda dapat mengatur tingkat alfa 0 hingga 255
o berarti transparan dan 255 berarti buram.
sumber
Cara terbaik adalah menggunakan kode warna transparan
gunakan kode warna # 00000000 untuk menjadikan segala sesuatu transparan
sumber
@android:color/transparent
tanpa nilai-nilai hard-coded.@android:
referensi langsung di tata letak dianggap sebagai nilai yang dikodekan karena jika Anda ingin mengubahnya, Anda masih harus berselancar di tata letak untuk menemukannya. Saya akan mendeklarasikan sesuatu seperti ini<item name="something">@android:color/transparent</item>
dan menggunakan nilai saya sendiri dalam tata letak sehingga saya dapat dengan mudah menemukannya di file resources.xml saya dan mengubahnya tanpa harus mencarinya di tata letakGunakan
ImageView
... ini memiliki latar belakang transparan secara default ...sumber
Saya sudah menambahkan sesuatu ke latar belakang jadi, Hal ini bekerja untuk saya:
(Android Studio 3.4.1)
EDIT : hanya bekerja di Android api level 21 ke atas. untuk kompatibilitas, gunakan ini sebagai gantinya
sumber
Gunakan ini:
sumber
Atur latar belakang ImageButton sebagai @null dalam XML
sumber
Gunakan "@null" . Ini berhasil untuk saya.
sumber
Nya
android:background="@android:color/transparent"
sumber
Ini secara terprogram mengatur warna latar belakang sebagai transparan
sumber
Secara pemrograman hal itu dapat dilakukan dengan:
sumber
android:background="@drawable/transparent"
). Either way, saya hanya menyarankan kemungkinan alasan untuk downvote; Saya tidak mengatakan itu dibenarkan.Di set XML Anda
Background
atribut untuk setiap warnaWhite(#FFFFFF)
teduh atau teduh.Black(#000000)
Jika Anda ingin transparansi hanya menempatkan 80 sebelum kode hash yang sebenarnya.sumber
Saya menggunakan transparan
png
untukImageButton
, danImageButton
bekerja.sumber