当前位置: 首页 > 编程笔记 >

iOS中的UIKeyboard键盘视图使用方法小结

龚苏燕
2023-03-14
本文向大家介绍iOS中的UIKeyboard键盘视图使用方法小结,包括了iOS中的UIKeyboard键盘视图使用方法小结的使用技巧和注意事项,需要的朋友参考一下

一、键盘风格  
UIKit框架支持8种风格键盘。


typedef enum {  

    UIKeyboardTypeDefault,                // 默认键盘:支持所有字符  

    UIKeyboardTypeASCIICapable,           // 支持ASCII的默认键盘  

    UIKeyboardTypeNumbersAndPunctuation,  // 标准电话键盘,支持+*#等符号  

    UIKeyboardTypeURL,                    // URL键盘,有.com按钮;只支持URL字符  

    UIKeyboardTypeNumberPad,              //数字键盘  

    UIKeyboardTypePhonePad,               // 电话键盘  

    UIKeyboardTypeNamePhonePad,           // 电话键盘,也支持输入人名字  

    UIKeyboardTypeEmailAddress,           // 用于输入电子邮件地址的键盘  

} UIKeyboardType;  


用法用例:

textView.keyboardtype = UIKeyboardTypeNumberPad;


二、键盘外观

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;


四、自动大写

typedef enum {  

    UITextAutocapitalizationTypeNone, //不自动大写  

    UITextAutocapitalizationTypeWords, //单词首字母大写  

    UITextAutocapitalizationTypeSentences, //句子首字母大写  

    UITextAutocapitalizationTypeAllCharacters, //所有字母大写  

} UITextAutocapitalizationType;  


用法用例:

textField.autocapitalizationType = UITextAutocapitalizationTypeWords;


五、自动更正

typedef enum {  

    UITextAutocorrectionTypeDefault,//默认  

    UITextAutocorrectionTypeNo,//不自动更正  

    UITextAutocorrectionTypeYes,//自动更正  

} UITextAutocorrectionType; 


用法用例:

textField.autocorrectionType = UITextAutocorrectionTypeYes;


六、安全文本输入

textView.secureTextEntry=YES;


开启安全输入主要是用于密码或一些私人数据的输入,此时会禁用自动更正和自此缓存
七、打开键盘遮住View的问题解决方法
默认情况下打开键盘会遮住下面的view,带来一点点困扰,不过这不是什么大问题,我们使用点小小的手段就可以解决。
首先我们要知道键盘的高度是固定不变的,不过在IOS 5.0 以后键盘的高度貌似不是216了,不过不要紧,我们调整调整就是了:
我们采取的方法就是在textField(有可能是其他控件)接收到弹出键盘事件时把self.view整体上移216px了(我们就以iPhone竖屏为例了)。
首先我们要设置textField的代理,我们就设为当前控制器了。

textField,delegate=self;


然后我们在当前控制器实现下面三个委托方法:

- (void)textFieldDidBeginEditing:(UITextField *)textField  

{ //当点触textField内部,开始编辑都会调用这个方法。textField将成为first responder   

       NSTimeInterval animationDuration = 0.30f;      

      CGRect frame = self.view.frame;  

      frame.origin.y -=216;  

      frame.size.height +=216;  

      self.view.frame = frame;  

       [UIView beginAnimations:@"ResizeView" context:nil];  

       [UIView setAnimationDuration:animationDuration];  

       self.view.frame = frame;                  

       [UIView commitAnimations];                  

}  



- (BOOL)textFieldShouldReturn:(UITextField *)textField   

{//当用户按下ruturn,把焦点从textField移开那么键盘就会消失了  

        NSTimeInterval animationDuration = 0.30f;  

        CGRect frame = self.view.frame;      

        frame.origin.y +=216;        

        frame.size. height -=216;     

        self.view.frame = frame;  

    //self.view移回原位置    

    [UIView beginAnimations:@"ResizeView" context:nil];  

    [UIView setAnimationDuration:animationDuration];  

        self.view.frame = frame;                  

        [UIView commitAnimations];  

        [textField resignFirstResponder];     

}         

 类似资料:
  • 本文向大家介绍IOS关闭键盘的方法,包括了IOS关闭键盘的方法的使用技巧和注意事项,需要的朋友参考一下 首先输入完成后按键盘上的done关闭键盘 首先在Interface Builder中选择TextFields,然后在Text Field Attributes中找到Text Input Traits,选择Return Key为done。OK 定义方法 实现方法 然后找到事件Did End On

  • 问题内容: 我有一个应用程序,该应用程序在视图的下半部分具有文本字段。这意味着当我输入文本字段时,键盘将覆盖文本字段。 如何在键入时向上移动视图,以便可以看到正在键入的内容,然后在键盘消失时将其向下移动到原始位置? 我到处都看过,但是所有解决方案似乎都在Obj-C中,我还不能完全转换。 任何帮助将不胜感激。 问题答案: 这是一个解决方案,无需处理从一个textField到另一个的切换: 要解决此问

  • 本文向大家介绍iOS让软键盘消失的简单方法,包括了iOS让软键盘消失的简单方法的使用技巧和注意事项,需要的朋友参考一下 一些文本输入控件等待输入时会弹出软键盘,我们可以设置这些控件的Did End On Exit之类的回调方法以在用户点击软键盘上的done或return之列的按键时收起键盘. 不过某些时候有些键盘没有上述的按键,或者我们希望点击App视图的背景时使软键盘收起来,无论当时软键盘是否打

  • 问题内容: 我试图将uiview始终添加到键盘顶部。我首先使用KeyboardWillShow / Hide做到了这一点,但是它并没有涵盖所有情况,因此我尝试使用inputAccesoryView。这是我尝试的: 我收到以下错误: 由于未捕获的异常“ UIViewControllerHierarchyInconsistencyency”而终止应用程序,原因:“子视图控制器:UICompatibil

  • 本文向大家介绍总结IOS中隐藏软键盘的三种方式,包括了总结IOS中隐藏软键盘的三种方式的使用技巧和注意事项,需要的朋友参考一下 一、使用软键盘的 Done 键隐藏键盘 出发软键盘隐藏最常用的事件是文本框的 Did End on Exit,它在用户按软键盘中的 Done 键时发生。选中一个UITextField控件,点击鼠标右键弹出面板,鼠标左键按住 Did End on Exit 事件旁边的圆圈,

  • 本文向大家介绍iOS 关闭键盘,包括了iOS 关闭键盘的使用技巧和注意事项,需要的朋友参考一下 示例 迅速 Ctrl +从MainStoryboard中的UItextfield拖动到ViewController类,然后创建一个UITextField出口 之后,再次选择UItextField并在ViewController类中按Ctrl +拖动,但是这次选择“动作”连接,然后在存储上选择“退出时结束