当键盘弹出时,布局是不可见的。我已经尝试了很多例子。但是它不能正常工作。任何帮助都会受到赞赏。谢谢。我的manifest.xml文件是
<activity
android:name=".activity.SignUp"
android:windowSoftInputMode="stateVisible|adjustResize"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="portrait"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
我的布局文件是
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:focusableInTouchMode="false"
android:orientation="vertical">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="40dp"
android:src="@drawable/userprofile" />
<EditText
android:id="@+id/editText"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginBottom="-10dp"
android:layout_marginLeft="80dp"
android:hint="USERNAME"
android:inputType="textPersonName"
/>
<ImageView
android:id="@+id/imageView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText"
android:layout_marginLeft="39dp"
android:layout_marginTop="30dp"
android:src="@drawable/email" />
<EditText
android:id="@+id/editText2"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/imageView3"
android:layout_alignLeft="@+id/editText"
android:layout_alignStart="@+id/editText"
android:hint="ENTER EMAIL"
android:inputType="textEmailAddress"
/>
<ImageView
android:id="@+id/imageView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/imageView3"
android:layout_marginLeft="39dp"
android:layout_marginTop="20dp"
android:src="@drawable/passunlock" />
<EditText
android:id="@+id/editText3"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/imageView4"
android:layout_marginLeft="80dp"
android:layout_marginTop="-15dp"
android:hint="ENTER PASSWORD"
android:inputType="textPassword"
android:text="password" />
<ImageView
android:id="@+id/imageView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/imageView6"
android:layout_alignLeft="@+id/imageView4"
android:layout_alignStart="@+id/imageView4"
android:src="@drawable/password" />
<EditText
android:id="@+id/editText4"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_below="@+id/editText3"
android:layout_marginLeft="80dp"
android:layout_marginTop="10dp"
android:hint="RETYPE PASSWORD"
android:inputType="textPassword"
android:text="password" />
<ImageView
android:id="@+id/imageView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText4"
android:layout_centerHorizontal="true"
android:layout_marginTop="39dp"
android:src="@drawable/signup" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/imageView6"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dp"
android:text="SIGN UP"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@android:color/white" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="-14dp"
android:layout_toLeftOf="@+id/imageView6"
android:layout_toStartOf="@+id/imageView6"
android:src="@drawable/username" />
答案 0 :(得分:1)
将Window SoftInput Mode属性设置为adjustPan和adjustResize
<activity android:windowSoftInputMode="adjustPan|adjustResize"> </activity> OR
<activity android:windowSoftInputMode="adjustResize"> </activity> OR
<activity android:windowSoftInputMode="adjustPan"> </activity>
如果以上任何内容无效,请在onCreate()
方法中使用以下代码:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
答案 1 :(得分:0)
以下链接可能对您有所帮助
https://developer.android.com/training/keyboard-input/visibility.html
如果adjustResize不起作用,请尝试将ScrollView添加为父布局。