在代码的日子里希望你我同行!

UITextField-简单创建-介绍-Objective-C

UITextField-简单创建-介绍-Objective-C

UITextField-简单创建-介绍-Objective-C

/**
 初始化UITextField
 @param 30 X坐标
 @param 30 Y坐标
 @param 200 输入框宽度
 @param 60 输入框高度
 */
_testText = [[UITextField alloc] initWithFrame:CGRectMake(30, 30, 200, 60)];

_testText.delegate = self; // 代理

_testText.text = @"YIem";// 显示文本

_testText.textColor = [UIColor redColor];  //字体颜色

_testText.font = [UIFont systemFontOfSize:30.0 weight:20.0]; // 字体大小 以及加粗

_testText.textAlignment = NSTextAlignmentCenter; // 字体居中显示

UITextField-简单创建-介绍-Objective-C

/*** 边框样式 枚举
typedef NS_ENUM(NSInteger, UITextBorderStyle) {
    //没有任何边框
    UITextBorderStyleNone,
    //线性边框
    UITextBorderStyleLine,
    //阴影效果边框
    UITextBorderStyleBezel,
    //圆型效果边框
    UITextBorderStyleRoundedRect
};
*/
_testText.borderStyle = UITextBorderStyleRoundedRect; // 边框样式


_testText.placeholder = @"占位-提示"; // 占位符-提示符

_testText.clearsOnBeginEditing = YES; // 是否在开始编辑时清空输入框内容
_testText.clearsOnInsertion = YES; // 设置为YES时 当输入框有内容时不会被清空-你可以继续编辑内容 PS:与clearButtonMode 可以同时存在

_testText.adjustsFontSizeToFitWidth = YES; // 字体跟随宽度 自适应

_testText.minimumFontSize = 12; // 字体最小为 12

_testText.background = [UIImage imageNamed:@""];// 设置背景图片(会被自动拉伸)

_testText.disabledBackground = [UIImage imageNamed:@""];// 设置禁用时的背景图片


/**** clearButtonMode  设置清除按钮的显示模式
 typedef NS_ENUM(NSInteger, UITextFieldViewMode) {
 //从不显示
 UITextFieldViewModeNever,
 //编辑的时候显示
 UITextFieldViewModeWhileEditing,
 //非编辑的时候显示
 UITextFieldViewModeUnlessEditing,
 //任何时候都显示
 UITextFieldViewModeAlways
 };
 */
_testText.clearButtonMode = UITextFieldViewModeAlways; // 清除输入框内容  不能与rightView 同用

UITextField-简单创建-介绍-Objective-C

 /**
 TextField - 用于自定义键盘
 x 0 无作用
 y 0 无作用
 W 0 无作用
 H 200 键盘高度
 */
UIView *inputTextView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 200)];
inputTextView.backgroundColor = [UIColor grayColor];

_testText.inputView = inputTextView;



/**
 用于键盘顶部的辅助栏
 
 x 0 无作用
 y 0 无作用
 W 0 无作用
 H 50 辅助栏高度
 
 */
UIView *inputAccessory = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 50)];
inputAccessory.backgroundColor = [UIColor cyanColor];

_testText.inputAccessoryView = inputAccessory;



/**
 TextField 的左视图-- 多用于 登录框图标位置

 */
UIView *leftTextView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
leftTextView.backgroundColor = [UIColor redColor];
_testText.leftView = leftTextView;
_testText.leftViewMode = UITextFieldViewModeAlways; // 设置输入框左视图的显示模式

UITextField-简单创建-介绍-Objective-C

/**
 TextField 的右视图-- 用途和左视图一样-- 
 PS:设置之后  自带的clearButtonMode 样式就会失效 不会出现清除等等

 */
UIView *rightTextView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
rightTextView.backgroundColor = [UIColor blueColor];
_testText.rightView = rightTextView;
_testText.rightViewMode = UITextFieldViewModeAlways; // 设置输入框右视图的显示模式

// 添加至视图
[self.view addSubview:_testText];    

}
// 注销第一响应(収键盘)
- (BOOL)endEditing:(BOOL)force; {

return YES;

}
// 点击清除按钮时调用,返回YES则可以清除,NO则不能清除
- (BOOL)textFieldShouldClear:(UITextField *)textField {

return YES;

}

// 点击return键触发
- (BOOL)textFieldShouldReturn:(UITextField *)textField {

NSLog(@"return");
return YES;

}

UITextField-简单创建-介绍-Objective-C

// 结束编辑调用
- (void)textFieldDidEndEditing:(UITextField *)textField {
NSLog(@"结束编辑");
}
// 开始编辑时调用
- (void)textFieldDidBeginEditing:(UITextField *)textField {
NSLog(@"开始编辑");
}

// 将要结束编辑时调用,返回YES则可以结束编辑状态,NO则不能结束
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {

NSLog(@"将要结束编辑 %@",textField.text);
return YES;

}

// 将要开始编辑时调用,点击输入框时触发,返回YES则可以进入编辑状态,NO则不能。
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
NSLog(@"将要开始编辑");
return YES;
}

// 结束编辑的原因
- (void)textFieldDidEndEditing:(UITextField *)textField reason:(UITextFieldDidEndEditingReason)reason {
NSLog(@"结束编辑-- %ld", reason);
}

// 输入字符时调用的方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {

NSLog(@"---%@",string);

return YES;

}

发表新评论