隐藏键盘的N种方法
---Created by luo.h
显示键盘
[textField becomeFirstResponder];
隐藏键盘
@interface ViewController ()<UITextFieldDelegate>
{
UITextField *CSTextField;
}
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
CSTextField =[[UITextField alloc]initWithFrame:CGRectMake(10, 100, 100, 30)];
CSTextField.borderStyle=UITextBorderStyleNone;
CSTextField.tag=10001;
CSTextField.delegate = self;//指定文本框的代理:
[self.view addSubview:CSTextField];
}
#pragma mark---收键盘-----
方式一.点击Return的时候隐藏键盘(需设置TextField的delegate)
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[CSTextField resignFirstResponder];//需指定文本框的代理 CSTextField.delegate = self;
return YES;
}
方式二.点击view其他区域隐藏键盘
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
//1.直接交出CSTextField的第一响应者的身份
[CSTextField resignFirstResponder]; //2.遍历所有子视图 查找UITextField控件并通知文本失去第一响应者状态
for (UIView *subVie in self.view.subviews) {
if ([subVie isKindOfClass:[UITextField class]]) {
[subVie resignFirstResponder];
}
} //3.view结束编辑
[self.view endEditing:YES]; //4.keyWindow 结束编辑
[[[UIApplication sharedApplication] keyWindow] endEditing:YES]; //5.发送resignFirstResponder.
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil]; //6.设置textField的Tag
[[self.view viewWithTag:10001] resignFirstResponder];
}
// Scroll 滑动隐藏
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
[self.view endEditing:YES];
}
scrollView.keyboardDismissMode=UIScrollViewKeyboardDismissModeOnDrag;(适用于TableView)
其他关于UITextField资料 ios7学习之路七(隐藏虚拟键盘,解决键盘挡住UITextField问题)
关于UITextView隐藏键盘
思路基本和UITextField一样
1.方法一
//1.(结束编辑)
[self.view endEditing:YES];
OR
[self.text endEditing:YES]; //2.(注销第一响应)
[self.text resignFirstResponder];
2.方法二 (Return)
/**
* 需设置textView的delegate
*/
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if ([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
隐藏键盘的N种方法的更多相关文章
- IOS 点击空白处隐藏键盘的几种方法
IOS 点击空白处隐藏键盘的几种方法 IOS7 点击空白处隐藏键盘的几种方法 IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能 ...
- IOS7 点击空白处隐藏键盘的几种方法
IOS7 点击空白处隐藏键盘的几种方法 iOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们 ...
- (转载)ios关闭虚拟键盘的几种方法
在iOS应用开发中,有三类视图对象会打开虚拟键盘,进行输入操作,但如何关闭虚拟键盘,却没有提供自动化的方法.这个需要我们自己去实现.这三类视图对象分别是UITextField,UITextView和U ...
- 关闭ios虚拟键盘的几种方法
在iOS应用开发中,有三类视图对象会打开虚拟键盘,进行输入操作,但如何关闭虚拟键盘,却没有提供自动化的方法.这个需要我们自己去实现.这三类视图对象分别是UITextField,UITextView和U ...
- CSS中隐藏内容的3种方法及属性值
CSS中隐藏内容的3种方法及属性值 (2011-02-11 13:33:59) 在制作网页时,隐藏内容也是一种比较常用的手法,它的作用一般有:隐藏文本/图片.隐藏链接.隐藏超出范围的内容.隐藏弹出 ...
- CSS中隐藏内容的3种方法
CSS中隐藏内容的3种方法 一般有:隐藏文本/图片.隐藏链接.隐藏超出范围的内容.隐藏弹出层.隐藏滚动条.清除错位和浮动等. 1.使用display:none来隐藏所有内容 display:none可 ...
- css隐藏元素的几种方法与区别
css隐藏元素的几种方法与区别 一:display:none;隐藏不占位 display 除了不能加入 CSS3 动画豪华大餐之外,基本效果卓越,没什么让人诟病的地方. 二:position:abso ...
- iOS隐藏键盘的几种方式
因为开发中经常要用到textField和textView,在某些情形下隐藏键盘很有必要,而隐藏键盘有多种方式,在合适的场景下用合适的方式隐藏就显得很重要,我也老是记不起来有哪些方法,这里就记录一下,以 ...
- 用css隐藏元素的5种方法
.green { width: 100px; height: 100px; background-color: #a0ee00; text-align: center; float: left; ma ...
随机推荐
- 编写Java程序,在一个文件夹内,查找占用磁盘空间最大的 jpg 文件,并输出文件大小
查看本章节 查看作业目录 需求说明: 在一个文件夹内,查找占用磁盘空间最大的 jpg 文件,并输出文件大小 实现思路: 创建ImageFileFilter类实现FilenameFilter接口,且重写 ...
- 编写Java程序,使用JTable表格组件展现人员信息列表
返回本章节 返回作业目录 需求说明: 使用JTable组件显现人员信息列表 实现思路: 创建一个JTable对象. 创建一个JScrollPane对象(显示横向和纵向滚动条). 将表格添加到滚动面板. ...
- SpringBoot集成MyBatis-Plus自定义SQL
1.说明 本文介绍Spring Boot集成MyBatis-Plus框架后, 基于已经创建好的Spring Boot工程, 添加自定义的SQL实现复杂查询等操作. 自定义SQL主要有两种方式, 一种是 ...
- MySQL数据库安装Version5.5
1.新建mysql用户 useradd -g hadoop -s /bin/bash -md /home/mysql mysql 创建.bash_profile,加载.bashrc 2.检查并且卸载系 ...
- python+appium运行提示找不到adb.exe “An unknown server-side error occurred while processing the command. Original error: Could not find 'adb.exe' in ["D:\\adt\\sdk;\\platform-tools\\adb.exe"”
自己踩过的坑,不记下来就会忘掉,忘了就会不断的重复踩坑!! 重来在一台电脑上搭建了python的环境,在运行的时候,提示找不到adb.exe,看到这个问题我在想是不是我的环境变量配置有问题,我就去改了 ...
- mybatis学习笔记(四)
resultType 语句返回值类型的完整类名或别名 resultType 返回的是一个map集合,key是列名,value是对应的值 使用resultMap实现联表查询 resultMap 查询的结 ...
- 关于 vim 的插件 snipmate 以及它的安装方式(使用国内源)
snipmate 是一个类似代码补全的东西,更好的地方在于自定义补全的内容. 最新的 snipmate 是在 https://github.com/garbas/vim-snipmate 而不是在官网 ...
- linux如何查看服务器当前的并发访问量
linux如何查看服务器当前的并发访问量 [root@localhost ~]# netstat -pnt | grep :80 | wc -l 2 [root@localhost ~]# netst ...
- Linux上天之路(十)之Linux磁盘管理
主要内容 磁盘介绍 磁盘管理 磁盘限额 逻辑卷管理 磁盘阵列 1. 磁盘介绍 硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等.每个盘片有两面,都可记录信息.盘片 ...
- Servlet初级学习加入数据库操作(一)
需要的源代码地址: https://url56.ctfile.com/f/34653256-527822631-2e255a(访问密码:7567) 将页面中的数据逐步替换为数据库管理 准备一个连接数据 ...