Android SDK目前提供的软键盘弹出模式接口只有两种:android
一是弹出时自动回冲界面,将全部元素上顶,函数
一种则是不重绘界面,直接将控件元素遮住,spa
没有其余模式,若是想实现其余效果,光使用系统接口是不行的。接口
解决方法:事件
第一步:给想要被顶上去的内容嵌套一个 ScrollView :get
<ScrollViewit
android:layout_width="match_parent"scroll
android:layout_height="0dp"方法
android:layout_weight="1"layout
android:scrollbars="none"
>
…… 想要被顶上去的内容 ……
</ScrollView>
第二步:在 文件中给对应的 Activity 设置 android:windowSoftInputMode="adjustResize"
一些机型到这里问题就已经解决了!
有些机型会出现点击过 EditView 它得到了焦点也弹出了软键盘,
可是收回软键盘后,再点击该 EditView 会出现被软键盘遮挡的状况,
点其它 EditView 后,再来点该 EditView 又恢复正常再也不被遮挡,
为了解决此问题见以下:
第三步:
发现去掉 ScrollView 的 android:scrollbars="none" 属性后问题就解决了!
但会出现滚动条,因此这个属性不能去掉,
只需在 Activity 的 onCreate 事件处理函数中的 setContentView 方法后紧跟着写上
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
便可解决此问题!