LRTextField
A subclass of UITextField that supports float label, validation, inputmask, and IB_DESIGNABLE
(Xcode 6). The expectation is that our text field can offer great functionality, while keeping the original design.
How to install
pod 'LRTextField'
USAGE
Init with code
// init with pre-defined style
LRTextField *textFieldEmail = [[LRTextField alloc] initWithFrame:CGRectMake(20, 70, 260, 30) labelHeight:15 style:LRTextFieldStyleEmail];
[self.view addSubview:textFieldEmail];
LRTextField *textFieldPhone = [[LRTextField alloc] initWithFrame:CGRectMake(20, 150, 260, 30) labelHeight:15];
textFieldPhone.placeholder = @"Phone";
textFieldPhone.hintText = @"(Optional)";
textFieldPhone.format = @"(###)###-####"; // set format for segment input string
textFieldPhone.keyboardType = UIKeyboardTypePhonePad;
[self.view addSubview:textFieldPhone];
LRTextField *textFieldValidation = [[LRTextField alloc] initWithFrame:CGRectMake(20, 240, 260, 30) labelHeight:15];
textFieldValidation.placeholder = @"Validation Demo";
textFieldValidation.hintText = @"Enter \"abc\"";
[textFieldValidation setValidationBlock:^NSDictionary *(LRTextField *textField, NSString *text) {
[NSThread sleepForTimeInterval:1.0];
if ([text isEqualToString:@"abc"]) {
return @{ VALIDATION_INDICATOR_YES : @"Correct" };
}
return @{ VALIDATION_INDICATOR_NO : @"Error" };
}];
[self.view addSubview:textFieldValidation];
Init in Storyboard / Xib
CUSTOMIZE
Color
LRTextField *textFieldCustom = [[LRTextField alloc] initWithFrame:CGRectMake(20, 320, 260, 30) labelHeight:15];
textFieldCustom.placeholder = @"Placeholder";
textFieldCustom.placeholderActiveColor = [UIColor redColor];
textFieldCustom.placeholderInactiveColor = [UIColor blackColor];
textFieldCustom.hintText = @"Purple hint";
textFieldCustom.hintTextColor = [UIColor purpleColor];
[self.view addSubview:textFieldCustom];
Disable Animation
textFieldCustom.enableAnimation = NO;
TROUBLESHOOTING
Please send an email [email protected]