在我的活动中,当我按下操作栏中的搜索时,软键盘会出现,这是预期但问题是我在底部有一个浮动动作按钮,如下图所示。如何解决这个问题。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true" >
<ListView android:id="@android:id/list"
style="?android:attr/listViewWhiteStyle"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<ImageButton
android:id="@+id/floating_action_button"
android:layout_width="@dimen/floating_action_button_width"
android:layout_height="@dimen/floating_action_button_height"
android:layout_marginBottom="@dimen/floating_action_button_margin_bottom"
android:layout_gravity="bottom|center_horizontal"
android:background="@drawable/floating_action_button"
android:src="@drawable/ic_messaging_new_message"
/>
</FrameLayout>
答案 0 :(得分:6)
尝试在清单的活动代码中提供android:windowSoftInputMode="stateAlwaysHidden|adjustNothing"
或android:windowSoftInputMode="stateAlwaysHidden|adjustPan"
。
答案 1 :(得分:6)
<强>解决方案:强>
在AndroidManifest
内部文件中,您的活动代码应如下所示,以实现所需的输出:
<activity android:windowSoftInputMode="adjustPan" ... >
<强>阐释:强>
当您使用adjustPan
时,活动的主窗口不调整大小以为软键盘腾出空间。相反,窗口的内容会自动平移,以便键盘不会遮挡当前焦点,用户可以随时看到他们正在键入的内容。这通常不如调整大小,因为用户可能需要关闭软键盘才能进入并与窗口的模糊部分进行交互。
<强>参考:强> document