最近在做的一个项目中,activity中有一个popwindow,popwindow中有一个edittext,当edittext获取焦点启动软键盘时,界面会被上移,需求要求界面保持不动软键盘覆盖界面,网上很多文章提供的方法是:
在项目的AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。。
但是在我做的项目中,这种设置完全无效,界面还是会上移,下面是我启动和隐藏软键盘的代码
public void hideInput(){
imm.hideSoftInputFromWindow(searchText.getWindowToken(), 0);
}
public void showInput(){
searchText.setFocusable(true);
searchText.setFocusableInTouchMode(true);
searchText.requestFocus();
imm.showSoftInput(searchText, 0);
}
解决方法:在activity属性设置android:windowSoftInputMode="stateVisible|adjustResize|stateAlwaysHidden"还没有搞清楚为什么,先做个笔记备忘吧。