UITextField 提供一个文字框可供使用者输入,在我们使用 Interface Builder 编辑的时候可以看到许多关于 UITextField 的属性,但是却没有一项属性是告诉我们在输入结束按下 Return Key 时小键盘要如何收起来,所以在这里将介绍两种收起小键盘的方法,分别是点击 Return Key 与点击 UITextField 以外的背景。(View-based Template)
首先是点击 Return Key 的部份,先写下一个回传 IBAction 的事件,程式码如下。
- (IBAction)doEditFieldDone:(id)sender {
//取消目前是第一回应者(键盘消失)
[sender resignFirstResponder];
}
接下来就是在 Interface Builder 中把此函式与对应的事件 Events 连接起来,通常是 Did End On Exit 事件。
另一种方式就是点击背景收起小键盘,一样写下一个回传 IBAction 的事件,不过由于是点击背景,所以系统并不知道是要收起哪一个 UITextField 所产生的小键盘,也就是不知道谁才是目前第一回应者,所以在程式码内必须指定该 UITextField 而不能使用 Sender。
//点击背景
- (IBAction)onBackgroungHit:(id)sender {
//取消目前是第一回应者(键盘消失)
[textField resignFirstResponder];
}
如果要使用地二种方式收起小键盘,记得要把 UIView 的 Class 设定成 UIControl,只有 UIControl Class 的控制项才可以触发动作。
接下来一样是把此函式与对应的事件 Events 连接起来,通常是 Touch Up Inside 事件。
分享到:
相关推荐
今天,我在开发过程中就遇到了这个问题,首先,软键盘收起会发生在两种情况下,一是当前区域为非第一响应者,二是当前区域的输入结束。具体解决方案有两种: 1、在当前页面设置点击事件,当点击事件发生时,注销当前...
当用户需要在文本输入框(如UITextField或UITextView)中输入时,键盘会自动弹出。但有时我们需要自定义键盘的行为,例如,当用户点击屏幕其他区域时,键盘应该自动收起。这可以通过实现UITextField或UITextView的...
同时,为了提供更好的用户体验,还可以考虑添加“滑动关闭键盘”功能,即用户向上滑动键盘区域时,键盘自动收起。 最后,压缩包中的`deguo.xcodeproj`文件是一个Xcode项目,可能包含了相关的示例代码或项目配置。...
在`viewDidLoad`方法中,我们可以设置一个手势识别器`UITapGestureRecognizer`,当用户点击屏幕任意非输入区域时,调用`endEditing:`方法来结束当前输入视图的编辑状态,从而收起键盘。这可以通过监听`...
UITextField和UITextView,前者是单行输入文本框,后者是可滑动的多行输入文本框,在这整个开发过程中,我们需要控制键盘的弹出和收起、在输入结束的时候获取输入的信息,此外,我们还需要保证在键盘弹起的时候不...
在iOS应用开发中,经常会遇到一个常见的问题:当用户在UITextField中输入文本时,弹出的键盘会遮挡屏幕下方的按钮,导致用户无法正常触发这些按钮的事件。为了解决这个问题,开发者需要采取措施让屏幕随键盘的出现而...
这个Demo可以帮助开发者理解并掌握键盘事件的监听以及如何在用户完成输入后优雅地收起键盘。 首先,让我们深入了解一下键盘管理和隐藏的基本概念。在iOS中,当你在UITextField或UITextView中添加了键盘代理,你可以...
// 键盘收起,恢复原始的contentInset view.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0) } ``` 如果`textField`位于`UITableView`的单元格内,情况可能会更复杂。在这种情况下,我们需要...
在这个项目中,视图动画被用来模拟输入框(UITextField)在用户未输入任何信息时的抖动效果,这通常用于表示错误或提醒用户注意。这种动画通常是通过Core Animation框架或者UIKit的动画API来实现的。 **实现抖动...
本项目主要关注的是`UITextField`或`UITextView`的键盘管理,特别是如何在用户点击视图的非输入区域时自动收起键盘。 首先,我们需要理解Swift中的UIResponder链。所有的视图都是UIResponder的子类,它们之间形成一...