UIKeyboard键盘
2015-06-08 10:26
435 查看
一、键盘风格
UIKit框架支持8种风格键盘。
[java] view plaincopyprint?
typedef enum {
UIKeyboardTypeDefault, // 默认键盘:支持所有字符
UIKeyboardTypeASCIICapable, // 支持ASCII的默认键盘
UIKeyboardTypeNumbersAndPunctuation, // 标准电话键盘,支持+*#等符号
UIKeyboardTypeURL, // URL键盘,有.com按钮;只支持URL字符
UIKeyboardTypeNumberPad, //数字键盘
UIKeyboardTypePhonePad, // 电话键盘
UIKeyboardTypeNamePhonePad, // 电话键盘,也支持输入人名字
UIKeyboardTypeEmailAddress, // 用于输入电子邮件地址的键盘
} UIKeyboardType;
用法用例:
textView.keyboardtype = UIKeyboardTypeNumberPad;
二、键盘外观
[java] view plaincopyprint?
typedef enum {
UIKeyboardAppearanceDefault, // 默认外观:浅灰色
UIKeyboardAppearanceAlert, //深灰/石墨色
} UIKeyboardAppearance;
用法用例:
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
三、回车键
typedef enum {
UIReturnKeyDefault, //默认:灰色按钮,标有Return
UIReturnKeyGo, //标有Go的蓝色按钮
UIReturnKeyGoogle, //标有Google的蓝色按钮,用于搜索
UIReturnKeyJoin, //标有Join的蓝色按钮
UIReturnKeyNext, //标有Next的蓝色按钮
UIReturnKeyRoute, //标有Route的蓝色按钮
UIReturnKeySearch, //标有Search的蓝色按钮
UIReturnKeySend, //标有Send的蓝色按钮
UIReturnKeyYahoo, //标有Yahoo!的蓝色按钮,用于搜索
UIReturnKeyDone, //标有Done的蓝色按钮
UIReturnKeyEmergencyCall, //紧急呼叫按钮
} UIReturnKeyType;
用法用例:
textView.returnKeyType=UIReturnKeyGo;
四、自动大写
[java] view plaincopyprint?
typedef enum {
UITextAutocapitalizationTypeNone, //不自动大写
UITextAutocapitalizationTypeWords, //单词首字母大写
UITextAutocapitalizationTypeSentences, //句子首字母大写
UITextAutocapitalizationTypeAllCharacters, //所有字母大写
} UITextAutocapitalizationType;
用法用例:
textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
五、自动更正
[java] view plaincopyprint?
typedef enum {
UITextAutocorrectionTypeDefault,//默认
UITextAutocorrectionTypeNo,//不自动更正
UITextAutocorrectionTypeYes,//自动更正
} UITextAutocorrectionType;
用法用例:
textField.autocorrectionType = UITextAutocorrectionTypeYes;
六、安全文本输入
textView.secureTextEntry=YES;
开启安全输入主要是用于密码或一些私人数据的输入,此时会禁用自动更正和自此缓存。
七.键盘的高度计算
在一些情况下,在键盘弹出时,需要上移动,键盘消失时界面恢复原来位置,则代码如下:(先建立键盘监听事件,然后键盘弹出时实现一个动画效果)
八.撤销键盘的方法
1.当用户按下return键或者按回车键,keyboard消失
2.点击空白撤销键盘的方法
UIKit框架支持8种风格键盘。
[java] view plaincopyprint?
typedef enum {
UIKeyboardTypeDefault, // 默认键盘:支持所有字符
UIKeyboardTypeASCIICapable, // 支持ASCII的默认键盘
UIKeyboardTypeNumbersAndPunctuation, // 标准电话键盘,支持+*#等符号
UIKeyboardTypeURL, // URL键盘,有.com按钮;只支持URL字符
UIKeyboardTypeNumberPad, //数字键盘
UIKeyboardTypePhonePad, // 电话键盘
UIKeyboardTypeNamePhonePad, // 电话键盘,也支持输入人名字
UIKeyboardTypeEmailAddress, // 用于输入电子邮件地址的键盘
} UIKeyboardType;
用法用例:
textView.keyboardtype = UIKeyboardTypeNumberPad;
二、键盘外观
[java] view plaincopyprint?
typedef enum {
UIKeyboardAppearanceDefault, // 默认外观:浅灰色
UIKeyboardAppearanceAlert, //深灰/石墨色
} UIKeyboardAppearance;
用法用例:
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
三、回车键
typedef enum {
UIReturnKeyDefault, //默认:灰色按钮,标有Return
UIReturnKeyGo, //标有Go的蓝色按钮
UIReturnKeyGoogle, //标有Google的蓝色按钮,用于搜索
UIReturnKeyJoin, //标有Join的蓝色按钮
UIReturnKeyNext, //标有Next的蓝色按钮
UIReturnKeyRoute, //标有Route的蓝色按钮
UIReturnKeySearch, //标有Search的蓝色按钮
UIReturnKeySend, //标有Send的蓝色按钮
UIReturnKeyYahoo, //标有Yahoo!的蓝色按钮,用于搜索
UIReturnKeyDone, //标有Done的蓝色按钮
UIReturnKeyEmergencyCall, //紧急呼叫按钮
} UIReturnKeyType;
用法用例:
textView.returnKeyType=UIReturnKeyGo;
四、自动大写
[java] view plaincopyprint?
typedef enum {
UITextAutocapitalizationTypeNone, //不自动大写
UITextAutocapitalizationTypeWords, //单词首字母大写
UITextAutocapitalizationTypeSentences, //句子首字母大写
UITextAutocapitalizationTypeAllCharacters, //所有字母大写
} UITextAutocapitalizationType;
用法用例:
textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
五、自动更正
[java] view plaincopyprint?
typedef enum {
UITextAutocorrectionTypeDefault,//默认
UITextAutocorrectionTypeNo,//不自动更正
UITextAutocorrectionTypeYes,//自动更正
} UITextAutocorrectionType;
用法用例:
textField.autocorrectionType = UITextAutocorrectionTypeYes;
六、安全文本输入
textView.secureTextEntry=YES;
开启安全输入主要是用于密码或一些私人数据的输入,此时会禁用自动更正和自此缓存。
七.键盘的高度计算
在一些情况下,在键盘弹出时,需要上移动,键盘消失时界面恢复原来位置,则代码如下:(先建立键盘监听事件,然后键盘弹出时实现一个动画效果)
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(forgetPassWordKeyWillShow:) name:UIKeyboardWillShowNotification object:nil];//键盘弹出时的监听 [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(forgetPassWordWillHide:) name:UIKeyboardWillHideNotification object:nil];//键盘消失时的监听 - (void)keyBoardShow:(NSNotification *)notification { //计算键盘高度 float y = [[notification.userInfo objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size.height; //键盘移动动画 [UIView animateWithDuration:0.5f animations:^{ self.view.frame = CGRectMake(0, (0-y/2), WIDTH, HEIGHT); _flowerIcon.transform =CGAffineTransformMakeScale(0.3, 0.3); }]; } - (void)keyBoardHide:(NSNotification *)notification { self.view.frame = frame; [UIView animateWithDuration:0.5f animations:^{ _flowerIcon.transform = CGAffineTransformMakeScale(1.0, 1.0); }]; }
八.撤销键盘的方法
1.当用户按下return键或者按回车键,keyboard消失
-(BOOL)textFieldShouldReturn:(UITextField *)textField { [textField resignFirstResponder]; return YES; } -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ [self.view endEditing:YES]; }
2.点击空白撤销键盘的方法
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ UITouch *touch = [touches anyObject]; if (![touch.view isKindOfClass: [UITextField class]] || ![touch.view isKindOfClass: [UITextView class]]) { [self.view endEditing:YES]; } }
相关文章推荐
- Ios中,在UIImage中写文字的一点心得。
- UITextField输入中文限制
- iOS UIFont 初识
- 详细整理:UITableView优化技巧
- 详细整理:UITableView优化技巧
- leetcode--Unique Paths
- Android UI开源框架
- 【Java GUI】Java面板基础:JPanel
- 红色小圆点+数字的badge自定义小方法 by Nicky.Tsui
- 大神曝光Win10 Build 10134简体中文版
- d:mtex/texlocal/l3packages/xparse.sty:57: Undefined control sequence
- 关于UIButton中的ContentEdgeInsets的深入研究
- EasyUI 添加身份证验证
- leetcode--Permutation Sequence
- C#中使用WeiFenLuo.WinFormsUI.Docking.dll实现窗口停靠效果
- DuiVision开发教程(14)-DUI控件基础类
- DuiVision开发教程(13)-DUI基类
- LeetCode 115:Distinct Sequence
- 自定义UIView以实现自绘
- UI设计师的待遇好吗