iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)

宜家博客
宜家博客
宜家博客
39767
文章
0
评论
2019年8月13日10:07:44 评论 210 1707字阅读5分41秒

创建项目,名字为KeyBoard,我用的是xcode4.2!

在MainStoryboard.storyboard文件里拖四个label和四个TextField,如下界面:

iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)

填满内容:

iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)点击完成Done键盘会消失!!

首先我先说说四个TextField的属性分别对应如下:

name:

iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)

age:keyboard改成Numbers and Punctuation

password:把Secure属性勾上

email:keyBoard发成E-mail Address

接下来是在KeyboardViewController.h文件定义如下:

  1. - (IBAction)doneEdit:(id)sender;

在KeyboardViewController.m文件实现如下:

  1. - (IBAction)doneEdit:(id)sender {  
  2.     [sender resignFirstResponder];  
  3. }

把四个TextFiled的Did​ End​ on​ Exit做连接出口IBAction,连到doneEdit方法上!这个大家都知道怎么连哈!在此不给出图例了!
[sender resignFirstResponder],是要求文本字段第一响应者的地位辞职,这就意味着不再需要键盘与文本字段的交互了,使其隐藏!

这样,效果就达到了,还有人会想:“我不想按Done键使其隐藏,我想使它按下后面的背景就把键盘隐藏了。”,不要急,接下来就说这种情况!!!!

还在原来的项目中进行,在视图中添加一个按钮,一个很大的按钮,能把正个视图盖住,把Type属性改成Custom,并把按钮拉到所有控件的上面,也就是第一位置如下图,这样做是为了不让按钮挡住所有按钮!

iPhone-使用TextField及键盘(useing TextField for inputs、using the keyboard)

KeyboardViewController.h文件中添加代码如下:

  1. @interface KeyboardViewController : UIViewController{  
  2.     UITextField *email;  
  3.     UITextField *password;  
  4.     UITextField *age;  
  5.     UITextField *name;  
  6. }  
  7. @property (retain, nonatomic) IBOutlet UITextField *email;  
  8. @property (retain, nonatomic) IBOutlet UITextField *password;  
  9. @property (retain, nonatomic) IBOutlet UITextField *age;  
  10. @property (retain, nonatomic) IBOutlet UITextField *name;  
  11. - (IBAction)buttonEdit:(id)sender;  
  12. - (IBAction)doneEdit:(id)sender;  
  13. @end  

并把button按钮Touch Up Inside事件连接到buttonEdit;

在KeyboardViewController.m文件实现:

  1. @synthesize email;  
  2. @synthesize password;  
  3. @synthesize age;  
  4. @synthesize name;  
  5. - (IBAction)buttonEdit:(id)sender {  
  6.     [email resignFirstResponder];  
  7.     
    输入密码查看隐藏内容:

    ;  
  8.     [age resignFirstResponder];  
  9.     [name resignFirstResponder];  
  10. }  

这样就实现了点击背影就关闭键盘了。

还有人会想:“我想一打开应用就打开键盘并且光标在name框内”。

那么就在viewDidLoad  里写入代码:

  1. - (void)viewDidLoad  
  2. {  
  3.     [name becomeFirstResponder];  
  4.     [super viewDidLoad];  
  5. }  

嗯!

继续阅读
weinxin
欢迎加入中国站长博客之家
本站的所有资源都会上传分享到博客之家,希望大家互相学习交流进步。
宜家博客
在C#中对枚举进行位运算--枚举组合 Linux编程

在C#中对枚举进行位运算–枚举组合

由于枚举的基础类型类型为基本的数值类型,支持位运算,因此可以使用一个值表示多个枚举的组合,在定义枚举时需要指定枚举数为2的幂指数方便进行位运算,即枚举数为1,2,4,8…,或1,1<<1,...
深入理解C++对象模型 Linux编程

深入理解C++对象模型

C++对象模型是比较重要的一个知识点,学习C++对象的内存模型,就可以明白C++中的多态原理、类的初始化顺序问题、类的大小问题等。 1 C++对象模型基础 1.1 C++对象中都有哪些东东 C++对象...
浅析TCP字节流与UDP数据报的区别 Linux编程

浅析TCP字节流与UDP数据报的区别

“TCP是一种流模式的协议,UDP是一种数据报模式的协议”,这句话相信大家对这句话已经耳熟能详~但是,“流模式”与“数据包模式”在编程的时候有什么区别呢?以下是我的理解,仅供参考! 1、TCP 打个比...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: