在以下屏幕截图中,我有一个图像,通过滚动视图 跟随 。 scrollview包含一个tablelayout,然后是一些edittext字段,后跟一个按钮
当我想在我的字段中输入值时,键盘会弹出,它会阻止我对字段的查看,如下所示:
如您所见,它阻止了我对edittext字段的看法。隐藏键盘是否有优雅的解决方案?如果没有,我会改变我的布局,但是我不知道该改变什么。我的布局如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#CCCCCC"
android:weightSum="1" android:id="@+id/llid">
<TextView ... >
</TextView>
<!-- Image inserted here as an ImageView from my code -->
<ScrollView
android:id="@+id/svid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="3dp">
<LinearLayout>
<TableLayout ... >
<TableRow>
<TextView ... />
<TextView ... />
</TableRow>
<TableRow>
<TextView ... />
<TextView ... />
</TableRow>
<TableRow>
<TextView ... />
<TextView ... />
</TableRow>
</TableLayout>
<EditText>
...
</EditText>
<EditText>
...
</EditText>
<EditText>
...
</EditText>
<Button>
...
</Button>
</LinearLayout>
</ScrollView>
</LinearLayout>
答案 0 :(得分:4)
我的第一个想法是转到模拟器中的设置:
设置 - &gt;语言和键盘 并取消选中“Android键盘”和其他奇怪的键盘,如果它们也被检查
答案 1 :(得分:1)
由于仿真器假设模仿手机上会看到的内容,因此如果您尝试在文本字段中输入值,则会弹出键盘。我知道这可能很烦人,但你不应该尝试在你的代码中禁用它,因为这会在手机上禁用它,然后用户将如何输入它们的输入?
此外,您可以按硬件后退按钮以在弹出键盘时将其解除。
答案 2 :(得分:1)
以编程方式,您可以通过
设置键盘禁用public void removeKeyboard(EditText e, Context context){
InputMethodManager keyB = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
keyB.hideSoftInputFromWindow(e.getWindowToken(), 0);
}
其中EditText或其他一些视图要求输入文本
UPDATE! 如果您使用SearchView设置用户输入,我找到了一些简短的方法来关闭键盘
nameButton.clearFocus();