在使用listView显示聊天窗口时,弹出输入法,我们期待的效果是输入框上移动,listview自动定位到最后的聊天内容。
但是项目中遇到了这样的情况,
聊天框底下有tab,我们就需要解决三件事。
1.输入法弹出时候ListView聊天内容不被遮挡
2.输入法弹出的时候,底部tab隐藏
3.输入法弹出的时候,聊天内容自动定位到最后一行。
1.在manifest的activity中设置输入法属性。
android:windowSoftInputMode
这个是Android1.5后的一个新特性。activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,
这个属性能影响两件事情:
【一】当有焦点产生时,软键盘是隐藏还是显示
【二】是否减少活动主窗口大小以便腾出空间放软键盘
各值的含义:
【A】stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置
【B】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示
【C】stateHidden:用户选择activity时,软键盘总是被隐藏
【D】stateAlwaysHidden:当该Activity主窗口获取焦点时,软键盘也总是被隐藏的
【E】stateVisib