键盘android事件?

时间:2011-08-04 13:45:30

标签: android events keyboard

在我的一个课程中,我在屏幕底部有两个EditText和一个Button。当我选择其中一个EditText时,键盘会出现。问题是然后将EditTextButton移到屏幕的前面以查看您正在编写的内容。但是,在EditText之上,我有两个TextView,当我向EditText写一些内容时,TextView会从屏幕上消失。

我可以这样做:当用户在Edittext中写一些内容时,只有EditText向上移动,其余内容不受影响吗?

3 个答案:

答案 0 :(得分:0)

此代码从上到下为您的edtxt设置动画:

正确地改变:

edtxt.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus)
{   
TranslateAnimation slide = new TranslateAnimation(0, 0, -100,0 );   
    slide.setDuration(1000);   
    slide.setFillAfter(true);
    edtxt.startAnimation(slide);  
}

}
    });

答案 1 :(得分:0)

android:windowSoftInputMode属性添加到Activity中的AndroidManifest

<activity android:name=".MyActivity"
          android:label="@string/app_name"
          android:windowSoftInputMode="adjustPan">
</activity>

这将使软件键盘打开时屏幕正确调整。

答案 2 :(得分:0)

您可以覆盖onConfigurationChanged方法并检查键盘上/下状态

@Override
public void onConfigurationChanged(Configuration config) 
{
    super.onConfigurationChanged(config);


    if (newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_NO)
    {

    } 
    else if (newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) 
    {

    }
}

<activity android:name=".MyActivity"
          android:configChanges="orientation|keyboardHidden"
          android:label="@string/app_name">