Rumah > Soal Jawab > teks badan
Menggunakan jenis kawalan yang salah dalam projek sedia ada:
Bagaimanakah kita boleh menggantikan UITextField
UITextField
替换成UILabel
dengan UILabel
Terima kasihChris
kerana menjelaskan kekeliruan;Label
Jika terdapat banyak antara muka, anda boleh menentukan tag
为情所困2017-06-24 09:46:22
Kaedah 1:
Tulis kelasCustomTextField
,继承自UITextField
,然后在可视化界面让你的所有UITextField控件
Warisikannya
Lumpuhkan semua peristiwa sentuh dalam CustomTextField
, yang pada asasnya akan berkelakuan sama seperti UILabel CustomTextField
中禁掉所有触摸事件,基本就与UILabel的表现一致了
如有必要,重写UITextField
的系统方法,不调用super方法,例如覆盖掉UIAlertView
Jika perlu, tulis semula kaedah sistem UITextField
dan jangan panggil kaedah super, sebagai contoh Gantikan acara klik UIAlertView
-(void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated{
// [super dismissWithClickedButtonIndex:buttonIndex animated:animated];
return;
}
Kaedah 2:
Tambah UITextField
的分类扩展,然后利用runtime的method swizzling交换系统方法,这样你所有的UITextField
dan ia akan menjadi sama seperti UILabel. . . Gunakan dengan berhati-hati! ! !
Akhir sekali, jika anda mempunyai masa lapang ini, lebih mudah untuk memadam dan menggantikannya satu demi satu