iOS点击空白区域隐藏键盘

- (void)setupForDismissKeyboard

{

  NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];

  UITapGestureRecognizer *singleTagGR = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAnyWhereToDismissKeyboard:)];

  __weak UIViewController *weakSelf = self;

  NSOperationQueue *mainQueue = [NSOperationQueue mainQueue];

  [nc addObserverForName:UIKeyboardWillShowNotification object:nil queue:mainQueue usingBlock:^(NSNotification *note){[weakSelf.view addGestureRecognizer:singleTapGR];}];

  [nc addObserverForName:UIKeyboardWillShowNotification object:nil queue:mainQueue usingBlock:^(NSNotification *note){[weakSelf.view removeGestureRecognizer:singleTapGR];}];    

}

- (void)tapAnyWhereToDismissKeyboard:(UIGestureRecognizer *)gestureRecognizer

{

  //此method 会将self.view里所有的subview的first responder 都resign掉

  [self.view endEditing:YES];

  [[NSNotificationCenter defaultCenter] postNotificationName:UIKeyboardWillHideNotification object:nil];

}

时间: 2024-10-07 11:38:49

iOS点击空白区域隐藏键盘的相关文章

【Android】备忘知识点如:点击空白区域隐藏键盘

/**  * 点击空白区域隐藏键盘.  * @param event the event  * @return true, if successful  */ @Override public boolean onTouchEvent(MotionEvent event) { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if (event.getActi

IOS 点击空白区隐藏键盘的几种方法

转自:http://blog.csdn.net/swingpyzf/article/details/17091567 IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们可以实现点击键盘以外的空白区域来将键盘隐藏,以下我总结出了几种隐藏键盘的方法: 首先说明两种可以让键盘隐藏的Method: 1.[view endEditing:YES]  这个方法可以让整个view取消第一响应者,从而让所有

点击空白区域隐藏指定元素实例代码

点击空白区域隐藏指定元素实例代码:此效果不是无的放矢的,当然正常的应用应该没有这么简单,一般都是和其他的功能结合在一起的,比如自定义select下拉菜单,点击空白区域的时候可以隐藏下拉菜单,本章节就是单独拿出这个功能做一下简单的介绍.代码实例如下: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"/> <meta name="author" content=&

点击空白区域隐藏

$(window).click(function (e) { var target = $(e.target); if (target.closest("#btn_addNewNodes,#txt_addNewNodes").length == 0) { $('#groupNameDIV').hide(); }; });

【转】Android点击空白区域,隐藏输入法软键盘

原文网址:http://www.2cto.com/kf/201505/401382.html 很多时候,我们在使用应用时,会出现输入法软键盘弹出的问题,通常情况下,我们默认会使用户点击返回键或者下一步对软键盘进行隐藏.为了更好的体验,我们可以实现当用户使用完毕软键盘时.点击空白区域即可实现隐藏的功能.效果如图所示: 代码实现 代码块语法遵循标准markdown代码,例如: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Android点击空白区域,隐藏输入法软键盘

欢迎使用Markdown编辑器写博客 很多时候,我们在使用应用时,会出现输入法软键盘弹出的问题,通常情况下,我们默认会使用户点击返回键或者下一步对软键盘进行隐藏.为了更好的体验,我们可以实现当用户使用完毕软键盘时.点击空白区域即可实现隐藏的功能.效果如图所示: 代码实现 代码块语法遵循标准markdown代码,例如: package example.com.jinlin.myapplication; import android.content.Context; import android.o

切换为文本框编辑状态,点击空白区域保存修改

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <link href="https://cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"> <style> *{ marg

js的事件冒泡和点击其他区域隐藏弹出层

一.前言 在编写页面的时候,我们经常使用到弹出层.对于弹出层,原本的意义就是增加与用户的交互,提升用户的好感度.如果弹出层都没有较好的体验,那何谈通过交互来提升好感... 首先提出几个弹出层的注意点: 弹出层的界面需要统一,不一致的弹出层并不能增加美感,相反还会显得页面布局更加杂乱无章: 弹出层的设计一定要好看,按钮要符合项目的主色调: 弹出层的宽度固定屏幕占比,设置max-width,高度根据内容自适应: 点击其他区域隐藏弹出层... 二.正文 今天,主要说说点击其他区域隐藏弹出层.笔者被这个

UITextField点击其他地方隐藏键盘

在iOS开发中,对UITextField进行编辑的时候键盘会自己弹出来.在编辑完成的时候,需要将键盘隐藏掉.隐藏键盘有很多种实现方法,最常见的是把TextField的firstResponder resign掉.即[textField resignFirstResponder].本文介绍的是如何在键盘显示的时候,点击屏幕除了键盘以外的任何地方,将键盘隐藏. 基本思想如下:1. 在ViewController载入的时候,将键盘显示和消失的Notification添加到self.view里.2. 分