1.0(oc)UITextField自定義clearButton按鈕圖片

最終效果截圖

更改后截圖.png

核心代碼

注意
按鈕frame必須設(shè)置 否則 點(diǎn)擊刪除鍵后 clearButton 會變小(系統(tǒng)默認(rèn)是1919)*
主要是使用了KVC方面的知識

// 按鈕

UIButton *clearButton = [textField valueForKey:@"_clearButton"];
//frame必須設(shè)置 否則 點(diǎn)擊刪除鍵后 clearButton 會變小(系統(tǒng)默認(rèn)是19*19)
clearButton.frame = CGRectMake(0, 0, 30, 30);
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn"] forState:UIControlStateNormal];
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn_selected"] forState:UIControlStateHighlighted];
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn_selected"] forState:UIControlStateSelected];

QYXAddCardTextFieldView.h 文件

#import <UIKit/UIKit.h>

@interface QYXAddCardTextFieldView : UIView
@property (nonatomic, strong)   UITextField * textField;
@end

QYXAddCardTextFieldView.m文件

#import "QYXAddCardTextFieldView.h"
@interface QYXAddCardTextFieldView()<UITextFieldDelegate>
@end
@implementation QYXAddCardTextFieldView
- (instancetype)initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame]) {

//1.背景
UIImageView * textFieldBG = [[UIImageView alloc] initWithImage:[UIImage resizedImageWithName:@"TextFieldBG"]];
textFieldBG.frame = CGRectMake(0, 0, self.width, self.height);
[self addSubview:textFieldBG];

//2.textfield
UITextField * textField = [[UITextField alloc] initWithFrame:CGRectMake(QYXSmallViewMargin, 0, self.width - QYXBigViewMargin, self.height)];
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
textField.keyboardType = UIKeyboardTypeASCIICapable;
textField.returnKeyType = UIReturnKeyDone;
textField.delegate = self;

[textField setValue:QYXNormalFont forKeyPath:@"_placeholderLabel.font"];
 textField.textColor = [UIColor whiteColor];
// textField.adjustsFontSizeToFitWidth = YES;
textField.font = iphone5 ? QYXNormalSubFont : QYXNormalFont;
[self addSubview:textField];
self.textField = textField;


//2.1 -- 刪除按鈕
UIButton *clearButton = [textField valueForKey:@"_clearButton"];
clearButton.frame = CGRectMake(0, 0, 30, 30);
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn"] forState:UIControlStateNormal];
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn_selected"] forState:UIControlStateHighlighted];
[clearButton setImage:[UIImage imageNamed:@"Placeholder_clearBtn_selected"] forState:UIControlStateSelected];


}
  return self;
}
@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容