在我的一个课程中,我在屏幕底部有两个EditText
和一个Button
。当我选择其中一个EditText
时,出现键盘。问题是,然后EditText
和Button
被移动到屏幕的前面,以便看到你正在写什么。但是,在EditText
之上,我有两个TextView
,当我给EditText
写信时,TextView
从屏幕上消失。键盘android事件?
我可以这样做:当用户在Edittext
中写入内容时,只有EditText
上移,其余不受影响?
在我的一个课程中,我在屏幕底部有两个EditText
和一个Button
。当我选择其中一个EditText
时,出现键盘。问题是,然后EditText
和Button
被移动到屏幕的前面,以便看到你正在写什么。但是,在EditText
之上,我有两个TextView
,当我给EditText
写信时,TextView
从屏幕上消失。键盘android事件?
我可以这样做:当用户在Edittext
中写入内容时,只有EditText
上移,其余不受影响?
此代码动画您edtxt从上到下:
DO相应改变:
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);
}
}
});
添加android:windowSoftInputMode
属性您Activity
在AndroidManifest
:
<activity android:name=".MyActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustPan">
</activity>
这将导致当软件键盘打开时,屏幕可以正确调整。
可以overrite 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">
可以使用setOnFocusChangeListener与此布局参数... – Hanry
你能不能给我一个例子吗? – Gabrielle
你想在编辑过程中将editText带到屏幕的中心? – Hanry