大多數(shù)情況下,你的textfield背景挤悉,并不會(huì)是白色的,或者是淺色的,這樣装悲,就會(huì)有一個(gè)問題昏鹃,你會(huì)發(fā)現(xiàn)你的cleanbutton很難發(fā)現(xiàn)。想要改變一下這本button的顏色诀诊。
首先需要找到這個(gè)button
UIButton *clearButton = [self valueForKey:@"_clearButton"];
clearButton.backgroundColor = [UIColor whiteColor];
設(shè)置好顏色洞渤,運(yùn)行發(fā)現(xiàn),周圍有一圈白色的(或者是你自定義的一個(gè)背景色)属瓣,應(yīng)為這個(gè)button的大小是1919的载迄,這個(gè)imageView的大小是1414的,如果你試圖改變這個(gè)imageview的大小來直接消掉這個(gè)白圈抡蛙,那是徒勞的护昧,這個(gè)大小是不能改變的????。
解決辦法粗截,就是讓設(shè)計(jì)大大給你做一個(gè)圖啦惋耙,直接把button的背景圖片改掉啦????。
題外話:用這個(gè)方法直接找到這個(gè)button算不算使用了蘋果的私有API熊昌,上架會(huì)不會(huì)被拒绽榛,我就真的不曉得了,如果知道的婿屹,還請告知灭美。
如果你害怕這樣被拒,那就自定義一個(gè)cleanbutton昂利,也是很簡單届腐,這里,我們定義一個(gè)textfield的子類页眯,來實(shí)現(xiàn)這個(gè)功能
添加一個(gè)button到textfield上邊梯捕,位置什么的自己定好了,先隱藏系統(tǒng)的和你自定義的button
self.clearButtonMode = UITextFieldViewModeNever;
customButton.hidden = YES;
在開始編輯的代理方法里寫
self.customButton.hidden = NO;
結(jié)束編輯的時(shí)候窝撵,隱藏按鈕
- (void)textFieldDidEndEditing:(UITextField *)textField {
self.customButton.hidden = YES;
}
butotn的點(diǎn)擊方法里寫上
self.text = nil;
這樣你就可以實(shí)現(xiàn)自定義一個(gè)cleanbutton了傀顾,好了,可以愉快的寫代碼了碌奉,如果有別的好的方法短曾,還請大牛們不吝賜教。