1.點進去類裡面找屬性
2.猜測可能是個label,在小麵包裡看,打斷點uitextfield *text檢視屬性,搜尋label,找到_placehoderlabel,使用kvc找到,設定顏色
3.使用分類設定乙個屬性,實現它的set方法,呼叫這個set方法就可以設定顏色,將2中的**寫在set方法裡。
使用這個分類有乙個bug,如果這樣寫
self.testtext.placecolor = [uicolor greencolor];
self.testtext.placeholder = @"234";
這個方法就不能成功。
必須先能夠獲取到系統的label在設定顏色才能夠成功,如果先設定顏色後給系統label設定屬性間接獲取label,這個方法就不能成功。
思路:需要給系統新增乙個屬性,然後呼叫系統的屬性走自己的方法
當我們想如果能夠給系統新增乙個屬性,在分類中使用runtime。
還需要利用runtime去交換系統和我們自定義的方法
關鍵**:
#import "uitextfield+lsplacehodercolor.h"
#import
@implementation uitextfield (lsplacehodercolor)
+ (void)load
- (void)setplacecolor:(uicolor *)placecolor
//不獲取顏色,所以返回nil
//- (uicolor *)placecolor
//這時候不能返回nil了,要返回runtime新增的屬性這樣self.placecolor = self.placecolor;中的get方法才能呼叫到
- (uicolor *)placecolor
- (void)setls_placeholder:(nsstring *)lsplaceholder
@end
ios設定TextField游標顏色
今天遇到個奇怪的問題,textfield不知何時消失了?其實是變成白色了,設定textfield的背景色就可以看出來,至於為什麼會這樣還沒找到原因 只能設定游標顏色 1 textfield setvalue uicolor redcolor forkeypath placeholderlabel.t...
iOS 設定textfield的最大文字長度
在現實開發中 需要控制文字輸入長度 並實時做簡訊驗證,如下 self.textfield addtarget self action selector codechange forcontrolevents uicontroleventeditingchanged bool textfield ui...
textfield設定搜尋框,高亮部分不搜尋,
1.給uitextfiled增加乙個 訊息處理 minputfield addtarget self action selector textfielddidchange forcontrolevents uicontroleventeditingchanged 2.在textfielddidcha...