首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS 12.0 WebView键盘弹出,关闭后界面没有回收的问题

iOS 12.0 WebView键盘弹出,关闭后界面没有回收的问题 背景 公司有人反馈,iOS 12.0的手机上,H5页面有个地方键盘弹出了,关闭之后,再次点击输入框,没有反应了,其实是界面上移了之后,...,设置了之后,键盘的问题解决了,但是又出现新的问题,iPhone X系列的全面屏的适配,之前H5页面body写的height:100%的地方,会显示高度不对。...; } 于是笔者再次尝试修改: 参考iOS12 WKWebView出现input 键盘页面上顶不下移解决方法,在H5界面监听键盘弹出和收起,在收起时,对webview的scrollview做偏移处理...故而再次修改: 笔者发现,有人给出参考方法,由H5端,监听键盘弹起和回收,然后进行处理,但是如果让H5处理,需要每个业务的H5都要单独处理,所以笔者就想,由原生监听键盘收起的通知,然后调用js的方法,代码如下...WKWebView出现input 键盘页面上顶不下移解决方法 ios 微信webview在键盘关闭后,没有自动回退页面

2.5K20
您找到你想要的搜索结果了吗?
是的
没有找到

iOS学习——键盘弹出遮挡输入框问题解决方案

iOS或Android等移动端开发过程中,经常遇到很多需要我们输入信息的情况,例如登录时要输入账号密码、查询时要输入查询信息、注册或申请时需要填写一些信息等都是通过我们键盘来进行输入的,在iOS开发过程中...textFieldDidEndEditing: 二 键盘弹出与收起 2.1 弹出键盘的控制   关于键盘弹出与收起问题,从上面的响应过程分析可知,键盘弹出对于UITextField和UITextView...上的实现在我之前的随笔中有专门讲到过了,想了解的小伙伴可以直接戳这里:ios学习——键盘的收起 三 文本框内容的获取   在之前的分析中,我们知道,文本框在结束之后都会调用一个方法就是  textFieldDidEndEditing...; //获取键盘高度 NSDictionary* info = [note userInfo]; CGSize kbSize = [[info objectForKey:UIKeyboardFrameEndUserInfoKey...] CGRectValue].size; //140是文本框的高度,如果你的文本框高度不一样,则可以进行不同的调整 CGFloat offSet = frame.origin.y + 140

3.5K60

Android监听键盘状态获取键盘高度的实现方法

最近我的一个项目中,在ugc页面需要在键盘顶部,紧贴着键盘显示一个文字提示,当键盘消失时就隐藏. 因此,我需要监听软键盘的打开/关闭 , 以及获取它的高度....getWindowVisibleDisplayFrame()会返回窗口的可见区域高度,通过和屏幕高度相减,就可以得到软键盘高度了。...至此,我们得到了剩余的高度 . 这个高度可能就是键盘高度了, 为什么说可能呢?因为还么有考虑到顶部的状态栏和底部的虚拟导航栏. 当然也可能不是键盘....然后我们根据这个高度和之前已知的键盘状态来判断是否为键盘. 并回调给监听者....我通过LayoutParams给它设置边距 , 只设置了底部边距 , 值为返回的”键盘高度”- 顶部状态栏高度-虚拟导航栏的高度. 得到真实的键盘高度.

2.1K10

IOS隐藏键盘

最近遇到二个键盘会自动弹出的问题: 1、UIWebView加载网页后,点击网页内的链接在UIWebView内进行跳转时,键盘自动弹起; 2、调用选择照片时,iPod上选择照片后也会自动弹出键盘,比如从图库进到具体某个文件夹内...,或者再返回图库,直接点中照片然后编辑的时候,都会自动弹出; 问题一是这样处理的 - (void)webViewDidStartLoad:(UIWebView*)webView {     [activityIndicatorView...cancelButtonTitle:nil otherButtonTitles:@"OK", nil];     [alterview show];     [alterview release]; } 网页开始加载或加载结束时关闭键盘并发送关闭键盘的事件...只需要增加二个属性 webView_.opaque = NO; webView_.backgroundColor = [UIColor clearColor]; 第二个问题的处理方案是,在导航切换的时候隐藏键盘并发送关闭键盘的事件...sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil]; } 因为接触ios

1.3K20

iOS 设置tableViewCell的高度

前言 iOS tableView的cell在显示之前必须获取cell的高度,如果cell的高度都一样,统一设置就行了,但是cell的高度不统一的话就要一一设置了,在ios8之前,需要自己手动去计算,iOS...之后就方便多了 iOS8以下(不包含iOS8) 定义全局变量 //用于缓存计算高度的cell var offscreenCells:[String:AnyObject] = [:]; 保存计算高度的Cell...cell.contentView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize).height + 1; return textHeight + minHeight - 10; } iOS8...以上(包含iOS8) 添加一下两个属性就行了 self.tableView.estimatedRowHeight = 44.0; self.tableView.rowHeight = UITableViewAutomaticDimension...1000,我们只要降低我们自己view高度约束的优先级就行了,设置高度的约束优先级为750,这样当系统估算后添加估算高度后,我们自己设置的高度就不起作用了。

2.3K30

关于H5在移动端弹出下拉选项时遮挡输入框的问题

背景 在最近的一个Hybrid App项目中,我实现的H5有以下两个需求: 使用quill.js实现富文本编辑器,但是,工具栏需要固定定位到底部,当输入法弹出时,工具栏需要悬浮在输入法键盘之上,如下图所示...当光标聚焦到编辑区输入文字时,系统级的输入法键盘弹出,此时,键盘弹出对webview的高度会有一定的影响,而android和ios对webview的处理有所不同,简单的说就是: android上:在下图中...,键盘弹出时,webview的高度 = 左图蓝色框的高度,当键盘弹出时,webview的高度 = 右图蓝色框的高度 - 红色框键盘高度,也就是说webview的高度为绿色框的高度 ios上:webview...但是,ios不会改变webview的高度,因此,当键盘弹出时,工具栏始终位于屏幕底部,从而被键盘遮挡,如此就不符合需求,所以,需要针对ios做特别处理 ios上的解决方案 有以下三种解决方案: 改设计:...将工具栏放在顶部,这样改动成本最小,兼容性最好,如果能说服产品,那么推荐这种方式 在ios app端,当键盘弹出时,配置webview的高度为屏幕高度 - 键盘高度,也就是与android保持一致的处理方式

5.3K30

详解Android中获取软键盘状态和软键盘高度

详解Android中获取软键盘状态和软键盘高度 应用场景 在Android应用中有时会需要获取软键盘的状态(即软键盘是显示还是隐藏)和软键盘高度。这里列举了一些可能的应用场景。...场景二 当软键盘弹出后,会将界面底部到中间的一大部分全部挡住,如果用户要查看、操作被覆盖的区域,必须先收起软键盘,这会影响用户交互。...所以通常需要在软键盘弹出后,将底部的一些View,例如Button,移到软键盘的上方,方便用户操作。...此外,getWindowVisibleDisplayFrame()会返回窗口的可见区域高度,通过和屏幕高度相减,就可以得到软键盘高度了。...Window可见区域高度差值大于整个屏幕高度的1/3,则表示软键盘显示中,否则软键盘为隐藏状态。

2.7K20

ios学习——键盘的收起

在开发过程中,我们经常会用到UITextField、UITextView等文本框,然后这些文本框在点击之后会自动成为第一响应者(FirstResponder),并自动弹出键盘。...然而,没有自动定义好的软键盘的回收。今天,我在开发过程中就遇到了这个问题,首先,软键盘收起会发生在两种情况下,一是当前区域为非第一响应者,二是当前区域的输入结束。...当点击事件发生在非选中区域时,则键盘会自动回收: 1 //在viewDidLoad中 添加点击手势,为了关闭键盘的操作 2 UITapGestureRecognizer *tap1 = [[UITapGestureRecognizer...2、利用键盘上的 回车键 来进行设置当前UITextField、UITextView等文本框不是第一响应者,这种方法对UITextField、UITextView的应用不一样,需要区别进行。   ...但是,我们可以根据UITextViewDelegate提供的方法对键盘输入的值进行判断,如果为回车键(\n)则设置当前UITextView不是第一响应者,否则不操作。

1.8K60
领券