我不知道如何让我的软键盘显示在TextView字段下。它只是掩盖了我的Button和TextView。
我已使用此链接http://android-developers.blogspot.com/2009/04/updating-applications-for-on-screen.html 作为参考。但它不起作用。
我的活动 AndroidManifest 文件中有windowSoftInputMode="adjustPan"
<activity
android:name=".SearchView"
android:label="@string/title_activity_search_view"
android:parentActivityName=".MainActivity"
android:theme="@style/AppTheme.NoActionBar"
android:windowSoftInputMode="adjustPan">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.txisystems.inventory.MainActivity" />
</activity>
这是没有软键盘时屏幕的样子。
以及与之相关的代码。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.mycompany.inventory.SearchView"
tools:showIn="@layout/activity_search_view">
<ImageView
android:id="@+id/logoView"
android:layout_width="225dp"
android:layout_height="90dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="20dp"
android:src="@drawable/mylogo" />
<ProgressBar
android:id="@+id/progressBar2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/logoView"
android:layout_centerHorizontal="true"
android:visibility="invisible" />
<EditText
android:id="@+id/txtSearchField"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/logoView"
android:layout_alignLeft="@+id/logoView"
android:layout_alignRight="@+id/logoView"
android:layout_alignStart="@+id/logoView"
android:layout_below="@+id/progressBar2"
android:inputType="textShortMessage"
android:maxLength="17"
android:maxLines="1"
android:capitalize="none" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/txtSearchField"
android:layout_marginBottom="15dp"
android:layout_marginTop="10dp"
android:background="@color/colorPrimary"
android:backgroundTint="@color/colorPrimaryDark"
android:onClick="doSearch"
android:text="Search"
android:textColor="@color/buttontext" />
<TextView
android:id="@+id/lblSearchMessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/button"
android:layout_alignLeft="@+id/button"
android:layout_alignRight="@+id/button"
android:layout_alignStart="@+id/button"
android:layout_below="@+id/button"
android:gravity="center_horizontal"
android:text="Please enter 4 or more characters."
android:textAllCaps="true"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/error"
android:textStyle="bold" />
</RelativeLayout>
这是发生的事情(我使用Photoshop来模拟屏幕。) 键盘无法解除,它会覆盖按钮和信息区域。
这就是我想通过Photoshop的魔力发生的事情。
答案 0 :(得分:0)
在托管XML的Activity(OnCreate)中使用它:
getActivity().getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);