求解答,关于虚拟键盘显示的
如图:
老大让点击第二个文本框的时候,在虚拟键盘弹出后,提交按钮不被虚拟键盘遮挡。
求解答,求方案
[解决办法]
楼上方法有误,改为:
1、首先获取布局界面的Layout对像,假设名称为FrameLayout01;
声明全局对象private FrameLayout FrameLayout01;
并获取这个对象
FrameLayout01 = (FrameLayout) findViewById(R.id.FrameLayout01);
2、监听输入框文本框的事件,假设文本框的对象名称为password,代码:
password.setOnFocusChangeListener(new OnFocusChangeListener()
{
@Override
public void onFocusChange(View arg0, boolean arg1) {
// TODO Auto-generated method stub
if(arg1)
{
LayoutParams lp = (LayoutParams) FrameLayout01.getLayoutParams();
lp.setMargins(0, -320, 0, 0);
FrameLayout01.setLayoutParams(lp);
}
else
{
LayoutParams lp = (LayoutParams) FrameLayout01.getLayoutParams();
lp.setMargins(0, 0, 0, 0);
FrameLayout01.setLayoutParams(lp);
}
}
});
上面代码的-320是top位置减320,也就是改变FrameLayout01的位置,使其往上移,通过改变top的值来实现不被软键盘遮住的效果。