2015-06-11 3 views
0

Пожалуйста, дайте мне знать, как использовать этот обычай UITextField в моей UIViewControllerКак использовать пользовательские UITextField в раскадровки

Я использую раскадровку.

#import <UIKit/UIKit.h> 

@interface MYTextField : UITextField 

@end 


@implementation MYTextField 

- (CGRect)textRectForBounds:(CGRect)bounds { 
    int margin = 10; 
    CGRect inset = CGRectMake(bounds.origin.x + margin, bounds.origin.y, bounds.size.width - margin, bounds.size.height); 
    return inset; 
} 

- (CGRect)editingRectForBounds:(CGRect)bounds { 
    int margin = 10; 
    CGRect inset = CGRectMake(bounds.origin.x + margin, bounds.origin.y, bounds.size.width - margin, bounds.size.height); 
    return inset; 
} 
+0

Это не должно быть так сложно ответить, но я не понимаю, что именно вы хотите сделать? Вы используете раскадровку? Измените свой вопрос и сделайте 4 пробела перед отправкой кода, что сделает его более читаемым. –

+0

Да, я использую Story board. Я хочу применить левое поле в своем текстовом поле, и я следую этому коду, но я не могу реализовать this.http: //stackoverflow.com/questions/5674655/uitextfield-align-left-margin – Abhishek

ответ

5

Вместо того чтобы использовать нормальный UITextField, вы должны использовать свой обычай MYTextField.

В коде:

MYTextField *myTextField = [[MYTextField alloc] init]; 

Если вы используете Interface Builder:

Выберите Ваш UITextField в файле интерфейса Builder, перейдите в Identity Inspector и установить правильный класс суб:

enter image description here

0
UIView *paddingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 5, 20)]; 
textField.leftView = paddingView; 
textField.leftViewMode = UITextFieldViewModeAlways; 

этот код добавляет некоторый запас в левую сторону текстового поля. Попробуй это сработало для меня.

Смежные вопросы