h5开发安卓软键盘遮挡解决方案】的更多相关文章

//处理input focus时被键盘遮挡问题 inputFocus:function(){ if(/Android [4-6]/.test(navigator.appVersion)) { window.addEventListener("resize", function() { if(document.activeElement.tagName=="INPUT" || document.activeElement.tagName=="TEXTAREA…
首先先判断是否为安卓,是的话才添加事件监听,获取焦点元素判断是否为input或者textarea类型,是的话,Element.scrollIntoView() 方法会让当前的元素滚动到浏览器窗口的可视区域内 created () { var u = navigator.userAgent if (u.indexOf('Android') > -1 || u.indexOf('Adr') > -1) { this.onFoucs() } }, methods: { onFoucs () { wi…
问题概述 在编辑框输入内容时会弹出软键盘,而手机屏幕区域有限往往会遮住输入界面,我们先看一下问题效果图: 输入用户名和密码时,系统会弹出键盘,造成系统键盘会挡住文本框的问题,如图所示: 输入密码时输入框被系统键盘遮挡了,大大降低了用户操作体验,这就是开发中非常常见的软键盘遮挡的问题,该如何解决? 简单解决方案  方法一 在你的activity中的oncreate中setContentView之前写上这个代码 getWindow().setSoftInputMode(WindowManager.L…
软键盘显示的原理 软件盘的本质是什么?软键盘其实是一个Dialog.        InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示.当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间,然后将该Dialog显示在底部,或者全屏显示. 软键盘显示的调整 android定义了一个属性,名字为windowSoftInputMode, 这个属性用于设置Ac…
布局被软键盘遮挡虽然不是什么大问题,但还是比较影响用户体验的:最让人恼火的是当前输入框被软键盘被遮挡,来看一下解决方法: 1.当前输入框被软键盘遮挡,仅把输入框显示出来,不改变整体布局: 设置Manifest: android:windowSoftInputMode="adjustPan" 代码设置:要在setContentView之前 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_P…
有朋友提到软键盘遮挡布局的问题,说网上找了很多资料都未能解决,下面我来总结一下那些事,有些内容也是从网友那里学来的,但是我都会自己验证正确了才会贴出来. 首先来分析下我们常见的遮挡问题有哪些(本次所说遮挡问题的控件都是在软键盘弹出的范围内).1.点击输入框弹出软键盘时,遮挡本输入框,2.点击输入框,输入框跟随软键盘自动上移时其他不该移动的内容也跟随上移,比如ActionBar.3.类似于登陆界面的2个以上的输入框,点击第一个进行输入的时候,它之下的控件不会跟随上移. 目前就这几个常见的类型,后续…
前言: 从以前的项目中找一个问题的解决方案,顺带找到了这个安卓机型调起输入法,页面没有自动上滑导致输入框被弹起的键盘遮挡的解决方案.这个问题只有安卓机型页面中的输入框处于底部(也就是底部键盘区域)的时候才会出现,近一年的项目中很少有表单输入比较多的场景,所以一直都没碰到这种问题.现在记录下来,以后需要的时候好找些. 示例代码: 公共方法封装: //调起输入法,键盘自动上滑 function inputUp(ele){ //安卓机型,自动上滑露出输入框 var u = navigator.user…
由于安卓app内嵌入H5页面,webview对于软键盘没有处理(如果不是产品强烈要求建议不要处理这种拆东墙补西墙的问题,因为其他的手机上可能会出现已经优化软键盘的情况) 1.input下方还有多余空位能够提供滚动 那么只需要一句代码就可以处理 setTimeout(function(){ if('scrollIntoView' in document.activeElement) { document.activeElement.scrollIntoView(); } else { docume…
我们在开发注冊界面的时候,最后几个注冊条件经常easy被系统弹出的键盘遮挡,例如以下图: 能够看见,邮箱条件被遮挡掉了,怎么解决呢?我是通过UITextField的代理加计算偏移量: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. self.emailTextField.delegate = self; } - (…
简单解决办法:在清单文件中添加 android:windowSoftInputMode="adjustResize" 此举可在软键盘弹出时,重新测量布局,保证不遮挡光标的所在位置..........…
之前总想搞一下这个模块,可是由于忙碌总是推迟,现在就把这块好好的弥补过来,下面是我实现的思路.本人才疏学浅,还望大家不要见笑. 首先我们还是先看写示例:            上面应用应该不用我过多介绍,下面我简单介绍下我如何实现的吧,想必这是大家最关心,前提说一点,思路上如果有不足的地方,或者有好的建议什么的,麻烦您多多指出,大家一起进步嘛. 首先我们从布局开始:      微博:红色方框我们称为底部导航栏,而蓝色部分是我们的表情窗口(包含表情分页点). 我的布局:或许大家看不到表情的布局,这…
开发中遇到: 在模拟器里面,textfield可以通过电脑键盘输入,可是怎么也不会自动弹出模拟器软键盘 解决方案: 切换一下键盘,command+shift+k,Xcode6.3 中只能是一种输入源…
这个问题应该算是phonegap的一个bug,在mainifest.xml 里android:windowSoftInputMode设置成了adjustpan,理论上不会出现遮挡悬停组件这种情况, 不过phonegap的config.xml里fullscreen设置成true的时候这个属性就失效了,不管设置成什么都无效, 所以目前的解决方案是将phonegap创建的项目里的config.xml的fullscreen设置成false,问题即可解决 一般推荐不太需要软键盘的软件使用全屏模式,如游戏这…
目前使用phonegap开发的手机应用,很少涉及视频播放的功能,究其原因,主要是phonegap提供的API里面对视频播放功能支持度不够,当然播放音频一般情况下还是能够实现的,由于工作需要,自己研究了一下如何使用phonegap来开发视频播放软件,主要有以下几种思路: 解决方案1:使用HTML5中的Video标签来进行播放,这种方案实际上在phonegap中的表现和直接用安卓原生浏览器来测试时一样的,这个时候你会发现将一个放在服务器上的包含Video标签的页面使用安卓原生浏览器打开之后,对于HL…
在iOS开发过程中,有时候须要弹出软键盘进行输入,有时候又须要在某些情况下隐藏软键盘,以提高用户体验. 今天有几个关于软键盘的小技巧和大家分享. (1)仅仅弹出数字键盘 有某些需求中,要求用户仅仅能在Text Field中仅仅能输入数字,这须要怎么做呢?能够写一个正則表達式用于推断用户输入:或者进行字符匹配等等. 可是这都要写代码.程序猿都是爱偷懒的.在iOS中能够通过简单设置,使弹出为数字键盘,这样用户输入就仅仅能为数字了. 选中某个Text Field.选择右側的Show the Attri…
页面输入框会出现被软键盘挡住的问题: 解决方法:获取input点击事件设置body高度 $('input').bind('click',function(e){ var $this = $(this); e.preventDefault(); setTimeout(function(){ $(window).scrollTop($this.offset().top-10 ); },200) })…
安卓手机解决办法 微信UI框架weui中给出了解决方法:weui框架http://weui.github.io/weui/example.js // .container 设置了 overflow 属性, 导致 Android 手机下输入框获取焦点时, 输入法挡住输入框的 bug // 相关 issue: https://github.com/weui/weui/issues/15 // 解决方法: // 0. .container 去掉 overflow 属性, 但此 demo 下会引发别的问…
本来以为这问题就只有ios才有,身边也没有android机测试,网上一搜,貌似有这个问题的还不少.最后把各种解决方法试了一边,貌似没什么用. 最后是这样解决的: setInterval(function(){ InputElement.scrollIntoViewIfNeeded(); },1) scrollIntoViewIfNeeded([bool]):只在当前元素在视口中不可见的情况下,才滚动浏览器窗口或容器元素,让当前元素可见. 至少在目前没找到其他更好的方法之前,只能这样简单粗暴的解决…
项目在线演示地址:http://rose111.applinzi.com/ github 地址:欢迎star https://github.com/midoxinxin/YueX-Music 悦心,一款音乐播放器应用.由"女立方"团队开发.眼下.较为流行的音乐播放器有QQ音乐.网易云音乐.多米音乐等. "悦心"音乐播放器的主要功能,提供音乐数据库,点击列表播放音乐,还可对歌曲进行收藏.加入专属音乐心情功能. 1.歌曲播放过程中,气泡随音乐节奏动态变化. 2.点击圆盘…
H5微信页面开发,软键盘弹起后,若原输入框被遮挡,页面整体将会上移,然而当输入框失焦,软键盘收起后,页面未恢复,导致弹框里的按钮响应区域错位. 解决方案:给输入框(或select选择框)添加失去焦点的事件,当输入框失去焦点,页面自动滚动到顶部,并且需要加定时器,否则偶尔会失效, //blur失去焦点事件$("input,select,textarea").blur(function(){ setTimeout(function() {                 ;       …
我遇到的问题:在一个页面里有一个弹出层之前我给我的最外层加了固定定位 用了下面的方法也不好使:没有办法我将之改为绝对定位层级变高在加上一个顶部标签通过js计算顶部高度来实现满屏遮挡: <section class="sureTweetApply" style="display: none;position: absolute;top: 0;left: 0;width: 100%;height: 100%;"> <!--<div class=&…
1.部分机型软键盘弹起挡住原来的视图 解决方法:可以通过监听移动端软键盘弹起 Element.scrollIntoView() 方法让当前的元素滚动到浏览器窗口的可视区域内.参数如下. true,表示元素的顶部与当前区域的可见部分的顶部对齐 false,表示元素的底部与当前区域的可见部分的尾部对齐 Element.scrollIntoViewIfNeeded()方法也是用来将不在浏览器窗口的可见区域内的元素滚动到浏览器窗口的可见区域.但如果该元素已经在浏览器窗口的可见区域内,则不会发生滚动.此方…
要想实现这样的软键盘出现的时候会自己主动把输入框的布局顶上去的效果,须要设置输入法的属性,有下面两种设置方式:     一.在java代码中设置例如以下:      getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE|                WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);    二.在androidmani…
H5微信页面开发,软键盘弹起后,若原输入框被遮挡,页面整体将会上移,然而当输入框失焦,软键盘收起后,页面未恢复,导致弹框里的按钮响应区域错位. 解决方案:给输入框(或select选择框)添加失去焦点的事件,当输入框失去焦点,页面自动滚动到顶部,并且需要加定时器,否则偶尔会失效, $("input,select").blur(function(){ setTimeout(function() {                var scrollHeight = document.doc…
ios端兼容input光标高度 问题详情描述: input输入框光标,在安卓手机上显示没有问题,但是在苹果手机上 当点击输入的时候,光标的高度和父盒子的高度一样.例如下图,左图是正常所期待的输入框光标,右边是ios的input光标. 出现原因分析: 通常我们习惯用height属性设置行间的高度和line-height属性设置行间的距离(行高),当点击输入的时候,光标的高度就自动和父盒子的高度一样了.(谷歌浏览器的设计原则,还有一种可能就是当没有内容的时候光标的高度等于input的line-hei…
问题:在使用mui和H5+进行移动端开发的时候,经常会遇见需要用户输入的情况 当input获取焦点弹起软键盘的时候,经常会遇见软键盘挤压页面.软键盘遮挡输入框等一系列问题: 原因:造成这种现象的原因是,当软键盘弹出的时候,webview窗口被挤压,高度变小了,所以这个时候,绝对定位的按钮就会跟随webview一起上移,给人的感觉就是按钮被顶上去了: 解决办法:在安卓手机上,当页面被挤压的时候,页面大小发生了改变,会触发onresize事件,在页面出口变小的时候,手动去设置webview的高度大小…
<body class="layout-fixed"> <!-- fixed定位的头部 --> <header> </header> <!-- 可以滚动的区域 --> <main> <!-- 内容在这里... --> </main> <!-- fixed定位的底部 --> <footer> <input type="text" placeho…
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com 目录 目录软键盘相关问题设置 OnLayoutChangeListener - 推荐设置 OnGlobalLayoutListener - 推荐重写 onSizeChanged - 麻烦,不推荐 软键盘相关问题 我们在开发中经常会遇到软键盘遮挡住了输入框,而直接把输入框往上顶adjustR…
给EditText外加一个ScrollView,将高度设置统一,并给ScrollView设置属性 android:fillViewport="true".  注:ScrollView只将EditView嵌套在其中即可,不可将其他组件放进来:不可随意在清单文件中给该activity设置软键盘属性.若弹出的软键盘遮挡了部分上移的view,可以在清单文件中给activity设置属性 android:windowSoftInputMode="adjustResize" 一些…
在iOS开发中.用户在进行文本输入的时候,往往会用到虚拟键盘上的回车键,也就是Return Key.回车键有时候能够是"完毕"(表示输入结束).能够是"下一项"(连续信息输入),能够是"搜索"(网页中输入).能够是"发送"(邮件输入),能够是"增加"(比方连接Wi-Fi),等等. 我们须要怎么设置呢?方法例如以下: (1)选中一个Text Field,点击右側的"Show the Attribut…