Bisakah seseorang memberi contoh kecil menerapkan blur pada gambar? Saya sudah mencoba mencari tahu kode untuk sementara waktu sekarang :( masih baru di obj c!
Ini
UIVisualEffectView
memberikan abstraksi sederhana atas efek visual yang kompleks. Bergantung pada efek yang diinginkan, hasilnya dapat memengaruhi konten yang berlapis di belakang tampilan atau konten yang ditambahkan ke konten tampilan.Terapkan a
UIVisualEffectView
ke tampilan yang ada untuk menerapkan efek blur atau semangat ke tampilan yang keluar. Setelah Anda menambahkan UIVisualEffectView ke hierarki tampilan, tambahkan subview apa pun ke contentView dariUIVisualEffectView
. Jangan menambahkan subview langsung keUIVisualEffectView
itu sendiri.
UIVisualEffectView
'scontentView
github.com/onmyway133/blog/issues/124Jawaban:
Letakkan tampilan kabur ini di imageView. Berikut adalah contoh dalam Objective-C:
dan Swift:
sumber
Berikut ini cara menggunakan UIVibrancyEffect dan UIBlurEffect dengan UIVisualEffectView
Tujuan-C:
Swift 4:
sumber
extension UILabel { override func tintColorDidChange() { textColor = tintColor; super.tintColorDidChange() } }
removeFromSuperView
, Anda membuat[self.visualEffectView setHidden:NO];
? Mengalokasikan dan menambahkan ke tampilan adalah operasi yang mahal daripada menyembunyikan atau menampilkan.Anda juga dapat menggunakan pembuat antarmuka untuk membuat efek ini dengan mudah untuk situasi sederhana. Karena nilai-z dari tampilan akan tergantung pada urutan yang tercantum dalam Garis Besar Dokumen, Anda dapat menyeret
UIVisualEffectView
ke garis besar dokumen sebelum tampilan yang ingin Anda blur. Ini secara otomatis membuat bersarangUIView
, yang merupakancontentView
properti yang diberikanUIVisualEffectView
. Sarang hal-hal dalam tampilan ini yang ingin Anda tampilkan di atas blur.Anda juga dapat dengan mudah memanfaatkan vibrancy
UIVisualEffect
, yang secara otomatis akan membuat sarang lainUIVisualEffectView
dalam garis besar dokumen dengan vibrancy diaktifkan secara default. Anda kemudian dapat menambahkan tampilan label atau teks ke elemen bersarangUIView
(sekali lagi,contentView
properti dariUIVisualEffectView
), untuk mencapai efek yang sama dengan elemen UI "> slide to unlock".sumber
Saya lebih suka membuat Efek Visual melalui Storyboard - tidak ada kode yang digunakan untuk membuat atau memelihara Elemen UI. Ini memberi saya dukungan lansekap penuh juga. Saya telah membuat sedikit demo menggunakan UIVisualEffects dengan Blur dan juga Vibrancy.
Demo di Github
sumber
Jika ada yang mau jawabannya di Swift:
Perbarui:
Sampai sekarang, ini tersedia di bawah IB sehingga Anda tidak perlu kode apa pun untuk itu :)
sumber
sumber
Ini digunakan untuk mengaburkan latar belakang, baik terang atau gelap, sehingga teks dapat ditapis lebih mudah. Anda secara opsional dapat mengaktifkan vibrancy, yang menyebabkan teks ditampilkan dalam warna yang cerah dan kontras di samping blur.
sumber