[关闭]
@Tyhj 2017-02-24T10:41:47.000000Z 字数 695 阅读 2067

Android键盘弹起导致界面背景变形的问题

Android


本文固定链接:https://www.zybuluo.com/Tyhj/note/666212

Andrid开发的时候遇到一个问题,当EditText获取焦点弹出键盘的时候,导致整个布局的背景发生变形。

解决方案:

  1. //在onCreate方法中加入以下代码
  2. getWindow().setBackgroundDrawableResource(R.mipmap.chat_bg);
  1. //在AndroidManifest的该Activity下配置如下
  2. android:windowSoftInputMode="adjustResize"

关于windowSoftInputMode

属性 解释
stateUnspecified 软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置
stateUnchanged 当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示
stateHidden 用户选择activity时,软键盘总是被隐藏
stateAlwaysHidden 当该Activity主窗口获取焦点时,软键盘也总是被隐藏的
stateVisible 软键盘通常是可见的
stateAlwaysVisible 用户选择activity时,软键盘总是显示的状态
adjustUnspecified 默认设置,通常由系统自行决定是隐藏还是显示
adjustResize 该Activity总是调整屏幕的大小以便留出软键盘的空间
adjustPan 当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注