Android 软键盘和界面的关系处理

在自己写的一个小应用中发现一个问题,当调出输入法后界面最下方的一个按钮被挤到了输入法的上面,这样很不美观,所以找了一下解决办法记录如下:

在AndroidManifest.xml文件中找到对应的activity添加该属性:android:windowSoftInputMode。

该属性做两件事:

1:当用户使该activity获得焦点时决定软键盘是隐藏还是显示。

2:当软键盘出来时activity是否重新调整大小以适应软键盘和输入的内容。

添加方法:

android:windowSoftInputMode="adjustPan"

也可以同时设置两个值(需是一个state...值加一个adjust...值中间用|隔开),如下:

android:windowSoftInputMode="stateHidden|adjustPan"

=号后面的值有9个,解析如下:
1:"stateUnspecified"

软键盘的显示或隐藏状态没有指定,系统将选择一个适合该主题的默认设置。

2:"stateUnchanged"

当activity跳转后仍然保持上一次的状态不变。

3:"stateHidden"

当用户转到一个activity时,软键盘被隐藏。

4:"stateAlwaysHidden"

当一个activity中获得输入焦点时软键盘也被隐藏。

5:"stateVisible"

当用户转到一个activity时软键盘通常可见。

6:"stateAlwaysVisible"

当用户转到一个activity时,软键盘总是可见。

7:"adjustUnspecified"

不指定界面是否调整大小以适应软键盘和输入内容显示在界面上的位置,由系统默认决定。

8:"adjustResize"

activity总是自动调整空间大小以适应软键盘(留出空间)。

9:"adjustPan"

当前activity界面自动移动使用户输入的内容不被覆盖。

参考文档:http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值