软键盘

Android隐藏软键盘

随声附和 提交于 2020-11-29 00:35:24
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if (imm.isActive()) { imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); } 来源: oschina 链接: https://my.oschina.net/u/864349/blog/332747

AndroidManifest.xml 文件解读

坚强是说给别人听的谎言 提交于 2020-03-26 15:32:47
一、关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试) 二、AndroidManifest.xml结构 <?xmlversion="1.0"encoding="utf-8"?> <manifest> <application> <activity> <intent-filter> <action/> <category/> </intent-filter> </activity> <activity-alias> <intent-filter></intent-filter> <meta-data/> </activity-alias> <service> <intent-filter></intent-filter> <meta-data/> </service> <receiver> <intent-filter></intent

Android:焦点在EditText上时自动显示软键盘

牧云@^-^@ 提交于 2020-03-14 20:38:47
我正在使用 AlertDialog 显示一个输入框。 当我调用 AlertDialog.show() ,对话框内部的 EditText 会自动聚焦,但软键盘不会自动显示。 如何在显示对话框时自动显示软键盘? (并且没有物理/硬件键盘)。 与按下“搜索”按钮调用全局搜索的方式类似,将自动显示软键盘。 #1楼 如果有人得到: 无法从类型Activity对静态方法getSystemService(String)进行静态引用 尝试向getSystemService调用添加 上下文 。 所以 InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0); #2楼 是的,你可以用 setOnFocusChangeListener 来帮助你。 editText.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { dialog

iOS下的 Fixed + Input 调用键盘的时候fixed无效问题解决方案

孤者浪人 提交于 2020-03-12 04:24:51
做touchweb开发的时候,做头疼的是,电脑上面时候好的,有些手机上面也是好的,个别手机和浏览器出现问题,对于这些,只能慢慢调试,找问题。 今天说一下比较老的IOS的问题,那就是“iOS下的 Fixed + Input 调用键盘的时候fixed无效问题”。 案例如下 <body> <!-- fixed定位的头部 --> <header>这里是头部</header> <!-- 可以滚动的区域 --> <section> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> <p>这里是内容区域</p> </section> <!-- fixed定位的底部 --> <footer> <input type="text"

移动端 软键盘 弹出时 影响布局

混江龙づ霸主 提交于 2020-03-05 17:27:53
移动端 软键盘 弹出时 会影响布局 1)前段时间作的移动端页面,因为高度只有1页所以用了height:100%;width:100%; ios下点击输入框弹出软键盘时,布局没有大影响。 当输入框可能被软键盘压到时,在一部分安卓下却出了问题,华为自带浏览器和UC会有布局上的问题。 原因可能是因为,软键盘弹出时,改变了height,使height:100%,不能达到原来的高度。 解决办法: $(document).ready(function () {   $('body').height($('body')[0].clientHeight); }); 页面加载完后,js给body一个定高。 2)以前还遇到过,移动端点击输入框时,页面向左偏移了一部分,但太久了,忘了什么浏览器了,重现不了,解决的方法是使输入框的大小居中. PS:吐槽下华为自带浏览器和UC不识别css3的新单位,vw,vh. 来源: https://www.cnblogs.com/shuchong/p/5783226.html

如何让LinearLayout的图片不被软键盘挤压

一笑奈何 提交于 2020-02-29 14:05:22
我是一个Android初学者,今天在布局时遇到软键盘把LinearLayout底层的图片向上挤压的问题,通过在网上了解了软键盘的工作原理后才知道软键盘是一个Dialog即遮罩,所以只要这个遮罩遮住LinearLayout即可解决问题了。 只需在文件AndroidManifest.xml中添加这句 android:windowSoftInputMode = "adjustPan"代码, 如: <activity android:windowSoftInputMode = "adjustPan" android:name="你的包名" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 即可让LinearLayout的图片不被软键盘挤压。 来源: oschina 链接: https://my.oschina.net/u/1021089/blog/222217

隐藏软键盘

浪尽此生 提交于 2020-02-19 17:37:22
方法1 // 如果输入法在窗口上已经显示,则隐藏,反之则显示 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); 方法2 // 隐藏软键盘 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(rePassword.getWindowToken(), 0); android:windowSoftInputMode="adjustPan|stateVisible" > 显示键盘并且不改变布局 活动的主窗口如何与包含屏幕上的软键盘窗口交互。这个属性的设置将会影响两件事情: 1> 软键盘的状态——是否它是隐藏或显示——当活动( Activity )成为用户关注的焦点。 2> 活动的主窗口调整——是否减少活动主窗口大小以便腾出空间放软键盘或是否当活动窗口的部分被软键盘覆盖时它的内容的当前焦点是可见的。 它的设置必须是下面列表中的一个值,或一个

秒懂Android开发之 android:windowSoftInputMode 属性详解

允我心安 提交于 2020-02-09 20:12:45
【版权申明】非商业目的可自由转载 博文地址:https://blog.csdn.net/ShuSheng0007/article/details/104232176 出自:shusheng007 文章目录 概述 windowSoftInputMode 软键盘可见性 stateUnspecified stateUnchanged stateHidden stateAlwaysHidden stateVisible stateAlwaysVisible 软键盘与Window的布局关系 adjustResize adjustPan adjustNothing 如何使用 使用建议 总结 概述 曾几何时,你是否对软键盘的显示与隐藏,软键盘与页面布局的关系傻傻分不清,测试的小姐姐时不时就会过来抱怨, 王二狗: “你这个键盘怎么把输入框盖住了,你让我怎么输入啊?“ “你这个键盘怎么把标题栏都顶没了?” “产品要求一进入这个页面键盘就是要主动弹出来的,你这个没有弹啊?” “产品要求一进入这个页面键盘是隐藏的,点击输入后才弹出,你这个为什么刚进来就弹出了呢?” … 如果测试要真是个漂亮的小姐姐,倒也是一桩人间美事,说不定还能碰撞出爱情的小火花,那要是王姐,或者李姐之类胖大妈天天找你谈心,你是不是就要疯了? 所以,让我们一起来彻底搞懂 android:windowSoftInputMode 吧

IOS微信下问题3 软键盘关闭后页面上移

馋奶兔 提交于 2020-01-29 02:52:03
问题: 在 IOS 上点击 input 框软键盘弹出,页面上移。点击软键盘上完成按钮软键盘关闭,但页面并没有下移。 解决: 监听软键盘弹起、关闭事件。在键盘关闭时对页面重新定位 // 兼容部分ios手机input失焦后页面上移问题 (function() { let myFunction let isWXAndIos = isWeiXinAndIos() if (isWXAndIos) { // 既是微信浏览器 又是ios============(因为查到只有在微信环境下,ios手机上才会出现input失去焦点的时候页面被顶起) document.body.addEventListener('focusin', () => { // 软键盘弹起事件 clearTimeout(myFunction) }) document.body.addEventListener('focusout', () => { // 软键盘关闭事件 clearTimeout(myFunction) myFunction = setTimeout(function() { window.scrollTo({top: 0, left: 0, behavior: 'smooth'})// 重点 =======当键盘收起的时候让页面回到原始位置 }, 200) }) } })() function

使用微信打开网页,弹出软键盘时遇到的兼容问题

岁酱吖の 提交于 2020-01-25 05:51:24
转载: 原文   过去开发中遇到过很多这种情况,页面底部需要固定定位一个按钮,广告栏或者菜单栏,页面中有表单项需要填写,在打开手机虚拟键盘的时候,底部固定定位的元素会处在软键盘上方,把本来就所剩无几的页面几乎都挡住了(一般发生在不使用框架的单独页面中),而浏览器并没有为开发者提供呼出软键盘的事件监听方法。   之前我的解决方法是 1 2 3 4 5 6 7 8 9 window.onresize = function (){ if (document.body.clientHeight<500){ document.getElementById( '底部元素id' ).style.display = 'none' ; } else { if (document.getElementById( '底部元素id' ).style.display == 'none' ){ document.getElementById( '底部元素id' ).style.display = 'block' ; } } }      当用户呼出软键盘时,页面会触发resize事件,页面大小变小,高度只有原有高度减去键盘高度的高度,一般都小于500, 同时市面上也几乎没有屏幕原有高度就小于500的手机,所以在resize触发后判断,如果document.body.clientHeight<500