解决常见的软键盘遮挡的方法
来源:学问馆 本文已影响6.17K人
来源:学问馆 本文已影响6.17K人
一、问题概述
在编辑框输入内容时会弹出软键盘,而手机屏幕区域有限往往会遮住输入界面,我们先看一下问题:
输入密码时输入框被系统键盘遮挡了,大大降低了用户操作体验,这就是开发中非常常见的软键盘遮挡的问题,该如何解决?
二、简单解决方案
方法1
在你的activity中的oncreate中setContentView之前写上这个代码
getWindow()oftInputMode(_INPUT_ADJUST_PAN);
方法2
在 项目的文件中界面对应的里加入
android:windowSoftInputMode="stateVisible|adjustResize"
这样会让屏幕整体上移。如果加上的 是 android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。
关于android:windowSoftInputMode
activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。
这个属性能影响两件事情:
【一】当有焦点产生时,软键盘是隐藏还是显示
【二】是否减少活动主窗口大小以便腾出空间放软键盘
它的设置必须是下面列表中的.一个值,或一个”state…”值加一个”adjust…”值的组合。在任一组设置多个值——多个”state…”values,例如&mdash有未定义的结果。各个值之间用|分开。
例如:
在这设置的值(除"stateUnspecified"和"adjustUnspecified"以外)将覆盖在主题中设置的值
各值的含义:
【A】stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置
【B】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示
【C】stateHidden:用户选择activity时,软键盘总是被隐藏
【D】stateAlwaysHidden:当该Activity主窗口获取焦点时,软键盘也总是被隐藏的
【E】stateVisible:软键盘通常是可见的
【F】stateAlwaysVisible:用户选择activity时,软键盘总是显示的状态
【G】adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示
【H】adjustResize:该Activity总是调整屏幕的大小以便留出软键盘的空间
【I】adjustPan:当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分
方法3
把顶级的layout替换成ScrollView,或者说在顶级的Layout上面再加一层ScrollView。这样就会把软键盘和输入框一起滚动了,软键盘会一直处于底部。
但这些方法虽然比较简单,但往往都有一定的局限性不是很灵活,有时达不到预期效果,大家可以试试或许也能解决你的问题,下面就教大家一种具有代码可控性的一种方法:
三、代码可控性方法
键盘关闭:以上所述是小编给大家介绍的Android软键盘遮挡的四种完美解决方案,希望对大家有所帮助,如果大家有任何疑问请给我们留言,小编会及时回复大家的。在此也非常感谢大家对的支持!
常见的MySQL解决方案
黑板报制作常见问题与解决方法
自我介绍几个常见误区以及解决方法
电脑内存常见问题分析及解决方法
汽车方向盘抖动的原因及解决方法
常见面试题的解决方式
电脑显示键盘没反应怎么解决
雅思口语考试常见问题及解决方法
网站打不开常见错误以及解决方法
鼠标键盘没反应怎么办_鼠标键盘没反应解决方法
应对电脑键盘按键失灵了的方法
键盘进水怎么解决
演讲中遇见问题的解决方法
摄影常见问题的解决办法
经常喝酒胃痛的解决方法
开车起步详细技巧 新手起步常见问题解决方法
职场常见问题及解决办法
遮挡的反义词
电脑键盘常见的故障及解决方法
网站被降权的常见原因分析以及解决方案
常见智力测试题解决方法带答案
职场女性常见的心理问题及解决办法
键盘个别键位失灵的处理方法
键盘的日常维护及常见故障诊断
win7电脑插上u盘没反应的解决方法
经常流鼻涕的解决方法