大家好,我是 Android 的新手,在我的项目中遇到了一个非常愚蠢的问题我有一个 EditText,只要用户触摸 EditText 软键盘,它就会在 ListView 的标题 View 中定义。我有一个叫做清除按钮的东西,它在清除软键盘后清除 EditText 不显示在 2.3 设备中。每当我按下锁定/电源按钮锁定设备并解锁时,软键盘就会显示
<activity
android:name=".pl.Mobile.AddJobNew"
android:configChanges="orientation|keyboardHidden"
android:screenOrientation="landscape"
android:windowSoftInputMode="stateVisible|adjustResize|adjustPan"
>
这是我在 Android 中针对 android:windowSoftInputMode 的 Activity 声明:'adjustResize' 选项非常适合 Android 2.3 设备,但在软键盘与编辑文本重叠的 4.0 设备中失败。选项“adjustPan”在 4.0 设备上运行良好但在 2.3 设备上失败
请帮我解决这个问题。
提前致谢
最佳答案
在带有编辑文本的 Activity 中试试这个:
int currentapiVersion = android.os.Build.VERSION.SDK_INT;
if (currentapiVersion >= android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH){
// Do something for 4.0 and above versions
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
}
else{
// do something for phones running an SDK before 4.0
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
}
同时删除,
android:windowSoftInputMode="stateVisible|adjustResize|adjustPan"
来自您在 list 文件中的 Activity 。
关于android - 遇到软键盘问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14357889/