Jadi, ada yang tahu cara menampilkan gambar dengan sudut bulat dengan Glide? Saya memuat gambar dengan Glide, tetapi saya tidak tahu cara meneruskan paro bulat ke perpustakaan ini.
Saya perlu menampilkan gambar seperti contoh berikut:
android
android-glide
mr.boyfox
sumber
sumber
Jawaban:
Glide V4:
Glide V3:
Anda dapat menggunakan
RoundedBitmapDrawable
untuk gambar lingkaran dengan Glide. Tidak diperlukan ImageView kustom.sumber
.centerCrop()
Anda mungkin berarti.circleCrop()
Periksa pos ini , luncuran vs picasso ...
Sunting : pos tertaut tidak menyebut perbedaan penting di perpustakaan. Glide melakukan daur ulang secara otomatis. Lihat komentar TWiStErRob untuk lebih lanjut.
sumber
public String getId()
cara yang ditunjukkan dalam kode karena mengembalikan id yang sama untuk semua gambar dan dengan demikian bisa terjadi bahwa luncuran akan menetapkan gambar bulat lama sementara tanpa transformasi itu akan mengatur gambar yang benar! Saya tidak tahu bagaimana glide berfungsi tetapi sepertinya cache cache transformasi gambar (untuk menghindari hard calc saya kira). Dan id digunakan sebagai id dari gambar yang diubah. Saya menambahkan url gambar ke konstruktor dan membuat metode yang disebutkan mengembalikan id yang dihasilkan seperti:this.id = String.format("%s:%s",this.getClass().getSimpleName(),id);
Cara termudah (membutuhkan Glide 4.xx)
sumber
.apply()
terjadi setelah itu.load()
.Coba dengan cara ini
kode
XML
all_circle_white_bg.xml
sumber
sangat sederhana saya telah melihat Glide library perpustakaan yang sangat bagus dan esai berdasarkan perpustakaan Google volley
gunakan perpustakaan ini untuk tampilan gambar bulat
https://github.com/hdodenhof/CircleImageView
sekarang
// Untuk tampilan sederhana:
// Untuk daftar:
dan dalam XML
sumber
Solusi lain tidak berhasil untuk saya. Saya menemukan mereka semua memiliki kelemahan signifikan:
Sangat menarik bahwa setelah meraba-raba dengan ini saya menemukan halaman perpustakaan Fresco tentang sudut dan lingkaran membulat di mana mereka pada dasarnya menuliskan batasan yang sama dan menyimpulkan dengan pernyataan:
Sulit dipercaya bahwa saat ini kami masih belum memiliki solusi nyata. Saya memiliki solusi alternatif berdasarkan tautan yang saya letakkan di atas. Kelemahan dari pendekatan ini adalah mengasumsikan latar belakang Anda adalah warna solid (sudutnya tidak terlalu transparan). Anda akan menggunakannya seperti ini:
Intinya ada di sini dan kode lengkap di sini:
sumber
Sekarang di Glide V4 Anda dapat langsung menggunakan CircleCrop ()
Tipe bawaan
sumber
Gunakan transformasi ini, itu akan berfungsi dengan baik.
sumber
Untuk Glide 4.xx
menggunakan
dari doc disebutkan bahwa
sumber
Menurut jawaban ini , cara termudah dalam kedua bahasa adalah:
Kotlin:
Jawa:
Ini berfungsi pada Glide 4.XX
sumber
Jawaban Roman Samoylenko benar, kecuali fungsinya telah berubah. Jawaban yang benar adalah
sumber
Saya menemukan satu solusi mudah dan sederhana untuk menambahkan batas atas tampilan gambar di mana warna ingin mengatur atau menambahkan gradien di atas gambar.
LANGKAH:
imgPlaceHolder
, Anda memerlukan satu gambar putih atau warna yang ingin Anda atur.Setelah menempatkan kode ini pada file xml, letakkan di bawah baris dalam file java.
Ini akan membuat batas tampilan gambar hanya tanpa bantalan dan margin tambahan.
CATATAN : Gambar putih adalah wajib untuk perbatasan jika tidak maka tidak akan berfungsi.
Selamat codding :)
sumber
Dengan pustaka glide Anda dapat menggunakan kode ini:
sumber
Saya mencari sebelumnya dan saya membuatnya dengan cara yang paling mudah, saya harap Anda akan menyukai ini.
CircleTransform.java
fade_in.xml untuk fade dalam animasi.
akhirnya memanggil metode ini.
sumber
Anda cukup memanggil konstruktor RoundedCornersTransformation, yang memiliki input enum cornerType. Seperti ini:
tetapi pertama-tama Anda harus menambahkan Glide Transformations ke proyek Anda.
sumber
Berikut ini adalah cara yang lebih modular dan lebih bersih untuk memotong crop bitmap Anda di Glide:
BitmapTransformation
lalu menggantitransform
metode seperti ini:Untuk Glide 4.xx
Untuk Glide 3.xx
Semoga ini membantu :)
sumber
sumber
sumber
Crop lingkaran + placeholder + crossfade
sumber
Glide versi 4.6.1
sumber
Dalam hal ini saya perlu menambahkan bayangan, dan ketinggian imageView tidak berfungsi
implementasi "com.github.bumptech.glide: glide: 4.10.0"
XML
Bentuknya bisa digambar
Konfigurasi Glide
sumber
Anda harus menggunakan CircularImageView untuk Menampilkan jenis Gambar ...
Anda menggunakan pustaka Glide yang digunakan untuk memuat gambar ..
Buat Satu ClassFile di Proyek Anda dan Muat di Imageview ... dan Anda akan mendapatkan Hasil yang Diinginkan ...
Coba Ikuti Kode ...
XML
CircularImageView.java
Catatan :
Kamu bisa memakai
atau
itu tidak akan mempengaruhi perpustakaan Anda yang lain ... tidak perlu mengubah kode Anda untuk mengunduh gambar atau apa pun ... itu hanya dapat didefinisikan menggunakan XML juga ..
sumber