软键盘隐藏我的edittext - android

时间:2014-08-02 20:42:43

标签: android keyboard android-edittext scrollview

我的布局中有一个edittext但是当单击此edittext时,软键盘会出现并覆盖整个文本字段。结果,我看不到我在打字的东西,这很烦人。谁能告诉我是否有办法解决这个问题?

编辑:我还尝试将整个布局包装在滚动视图中。我听说这样我可以得到我想要的但仍然没有任何反应。这是我的布局代码:

<ScrollView android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:fillViewport="true"
 xmlns:android="http://schemas.android.com/apk/res/android">
      <RelativeLayout 
       android:id="@+id/mainLayoutMain"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:background="@drawable/background"
       android:paddingLeft="@dimen/activity_horizontal_margin"
       android:paddingRight="@dimen/activity_horizontal_margin" >

.................... Bunch of View....................
     </RelativeLayout>
</ScrollView>

我还能做什么?

P.S我还尝试在清单文件中设置这些属性:

 android:windowSoftInputMode="adjustPan"

 android:windowSoftInputMode="adjustResize"

甚至:

 android:windowSoftInputMode="adjustPan|adjustResize"

但没有任何作用。 Everthing导致相同的结果 - 软键盘隐藏了编辑文本字段。

1 个答案:

答案 0 :(得分:0)

你可以做的一件事是让你的根(父)布局有android:layout_height="wrap_content",这样View会在召唤软键盘时自动失效,相应地调整大小,如果{{1} }已与EditText的底部对齐(我建议您使用View作为父级),它应该提升。


修改

另一件事:

尝试将此属性设置为清单:

RelativeLayout

然后更改根布局:

<application ... >
    <activity
        android:windowSoftInputMode="adjustResize" ... >
        ...
    </activity>
    ...
</application>

我不知道任何其他解决方案,主要是因为没有已知的回调,或者在代码中处理此类行为的事件(软键盘生成)。

所以这一切都取决于布局设计和属性,以及android系统如何处理输入事件。