-
UITextFieldiOS/Objective C 2015. 11. 16. 21:18
텍스트 필드를 생성하기 편하게 만들어 놨습니다.
더 좋은 방법이있다면 댓글로 달아주시면 감사드리겠습니다.
- (UITextField*) setCoCoTextfield:(CGRect)rect
backImage:(NSString*)imageName
textColor:(UIColor*)textColor
fontSize:(UIFont*)font
firstReadMessage:(NSString*)readMessage
messageColor:(UIColor*)messageColor
whereView:(UIView*)view
setKeyboardType:(UIKeyboardType)type
userInteractionEnabled:(BOOL)enabled
setTag:(NSInteger)tag
{
//텍스트 필드의 뒷 배경을 설정합니다. 태그값은 tag로 받되 remove해주실때 태그를 같이 입력하시면됩니다.
//텍스트 필드 자체에 이미지를 넣어도 좋지만, 정확하고 예쁘게 넣기위해 넣어봤습니다. 때에따라 사용하면됩니다.
//스트레칭을 해놓았기때문에 사용자의 편의에따라 다르게 넣어주시면 됩니다.
UIImage* setimage = [[UIImage imageNamed:imageName]
resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10) resizingMode:UIImageResizingModeStretch];
UIImageView* idimage = [[UIImageView alloc] initWithFrame:rect];
[idimage setImage:setimage];
[idimage setUserInteractionEnabled:enabled];
[view addSubview:idimage];
//텍스트필드를 생성해주고
UITextField* textfield = [[UITextField alloc] initWithFrame:
CGRectMake(rect.origin.x, rect.origin.y, rect.size.width, rect.size.height)];
//텍스트 필드를 선택가능하게 만들어줍니다. 문자를 입력받기 위함.
[textfield setUserInteractionEnabled:enabled];
//텍스트 필드 입력시 우측에 클리어버튼이 나오게끔 해줍니다.
[textfield setClearButtonMode:YES];
//델리게이트를 사용하기 위해 self 를 넣어놓습니다.
[textfield setDelegate:self];
//폰트는 UIFont를 사용합니다. [UIFont systemFontOfSize:12]...
[textfield setFont:font];
//텍스트 색상도 설정합니다.
[textfield setTextColor:textColor];
//텍스트를 입력하기전에 무엇을 입력할 것인지 알려주는 메세지에 색상을 설정합니다.
[textfield setAttributedPlaceholder:[[NSAttributedString alloc]
initWithString:readMessage
attributes:@{NSForegroundColorAttributeName:messageColor}]];
//UIKeyboardTypeEmailAddress.UIKeyboardTypeNumberPad...//키보드 타입을 설정합니다.
[textfield setKeyboardType:type];
//태그를 설정해줍니다 나중에 remove하기 편하기위해.
[textfield setTag:tag];
//글자 정렬을 설정해줍니다.(default = center)
[textfield setTextAlignment:NSTextAlignmentCenter];
//그려줍니다.
[view addSubview:textfield];
return textfield;
}
사용 예)
UITextField* tf = [self
setTextfield:CGRectMake( 8, 10, 55, 29)
backImage:@"이미지 이름"
textColor:[UIColor whiteColor]
fontSize:[UIFont boldSystemFontOfSize:12]
firstReadMessage:@"문자를 입력해주세요."
messageColor:[UIColor redColor]
whereView:self.view
setKeyboardType:UIKeyboardTypeNumberPad
userInteractionEnabled:YES
setTag:100];
'iOS > Objective C' 카테고리의 다른 글
UILabel - 텍스트의 사이즈,색 바꾸기 (0) 2015.11.27 [Xcode] DB접속 프로그램 Sequel Pro for mac (0) 2015.11.25 [Xcode] Xcode PlugIn (0) 2015.11.24 UIImagePickerController - 간단한 카메라 다루기 (0) 2015.11.17 UITextField - 키보드 내리기 (0) 2015.11.16