如圖:
image.png
左邊的icon太過于貼近左邊
text輸入也太貼近左邊
而且UITextfield也沒有提供相應的方法
不然就要讓UI給切一個帶有邊距的圖,或者添加一層父視圖,其實并不需要
解決辦法:
創(chuàng)建一個繼承與UITextfield的類,重寫以下方法
//leftView添加左邊距
- (CGRect)leftViewRectForBounds:(CGRect)bounds{
CGRect textRect = [super leftViewRectForBounds:bounds];
textRect.origin.x += kSuitLength(10);
return textRect;
}
//text位置添加左邊距
- (CGRect)textRectForBounds:(CGRect)bounds {
CGRect rect = [super textRectForBounds:bounds];
int margin = kSuitLength(9);
CGRect inset = CGRectMake(rect.origin.x + margin, rect.origin.y, rect.size.width - margin, rect.size.height);
return inset;
}
//編輯位置添加左邊距
- (CGRect)editingRectForBounds:(CGRect)bounds {
CGRect rect = [super editingRectForBounds:bounds];
int margin = kSuitLength(9);
CGRect inset = CGRectMake(rect.origin.x + margin, rect.origin.y, rect.size.width - margin, rect.size.height);
return inset;
}
當然右邊距也是一樣~
效果圖揪漩,這樣看上去就順眼很多了!
image.png
如有幫助,請點一下喜歡??????