Saya punya UIButton yang, ketika dipilih, tidak boleh berubah status saat disentuh. Perilaku default adalah untuk berada di UIControlStateHighlighted saat disentuh, dan ini membuat saya marah.
Saran?
Tombol Anda harus buttonType
diatur ke Kustom.
Di IB Anda dapat menghapus centang "Sorot menyesuaikan gambar".
Secara terprogram Anda dapat menggunakan theButton.adjustsImageWhenHighlighted = NO;
Opsi serupa juga tersedia untuk keadaan "dinonaktifkan".
Selain jawaban di atas untuk tidak menandai "sorot menyesuaikan gambar" di IB, pastikan bahwa jenis tombol diatur KUSTOM.
sumber
Ini akan bekerja untuk Anda:
Baris ke-3 adalah triknya di sini ...
Ini berfungsi sama untuk mengatur gambar / backgroundImage
sumber
adjustsImageWhenHighlighted
milikUIButton
tampaknya hanya mempengaruhi gambar latar belakang.sumber
sama-sama berguna untuk penampilan Anda sendiri dari tombol dinonaktifkan.
sumber
Bergantung pada perubahan apa dari default ke keadaan tombol yang disorot, Anda dapat memanggil beberapa metode untuk mengaturnya ke apa yang Anda butuhkan. Jadi jika perubahan gambar bisa Anda lakukan
Jika teks berubah Anda bisa melakukannya
fungsi serupa lainnya:
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state
- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state
sumber
OK, ini solusi mudah jika ini cocok untuk Anda, setelah seminggu membenturkan kepalaku, akhirnya terpikir oleh saya untuk hanya menetapkan highlight = NO untuk baris pertama metode IBAction untuk TouchUpInside atau TouchDown, atau apa pun yang berfungsi. Bagi saya itu baik-baik saja di TouchUpInside.
sumber
Untuk Pengembang Swifty -
sumber
Swift 3+
sumber
hanya dua hal:
sumber
Saya memiliki masalah yang sama dan menemukan bahwa "hapus centang" Menghapus Konten Grafik dalam pembangun antarmuka memperbaiki masalah saya
sumber
buat tombol Anda Ketik - "Kustom" dan Hapus centang - Sorot Menyesuaikan gambar dan Anda selesai.
sumber
hindari untuk mengatur Line Break to Klip UIButton , gunakan sebaliknya Truncate Middle standar
sumber