android - 显示软键盘时背景布局移动 - android

标签 android android-layout android-softkeyboard

我有一个输入弹出窗口显示在我的 Activity 主视图上,其中有一些编辑框。当显示弹出窗口时, Activity View 在后台保持暗淡(就像警告对话框一样)。

我遇到的问题是,当键盘出现时,弹出窗口正常,但后台的 Activity View 正在向上移动。该 View 应该暂停,我根本不会认为它会受到键盘的影响。有什么办法可以阻止这种情况发生吗?

我已经尝试将 android:windowSoftInputMode="adjustPan"添加到 Activity 和弹出窗口中,但没有成功。

这是我的 Activity 布局:

<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical" android:background="@drawable/main_bg">

<include android:id="@+id/header" layout="@layout/common_header" android:layout_width="fill_parent" android:layout_height="wrap_content"/>

 <RelativeLayout
  android:id="@+id/contentLayout"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:layout_margin="5dp"
 >

<include android:id="@+id/btnBar" layout="@layout/common_button_bar" 
android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:layout_alignParentBottom="true"/>  

  <LinearLayout
   android:id="@+id/webLayout"
   android:layout_above="@+id/btnBar"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:background="@drawable/blk"
  android:layout_margin="10dp">

   <WebView
android:id="@+id/WebView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_margin="1dp"
android:background="@drawable/white"
   >


   </WebView>

  </LinearLayout>
 </RelativeLayout>
    </LinearLayout>

这是我的弹出布局:

<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_height="wrap_content"
 android:orientation="vertical"
 android:background="@color/light_grey" android:layout_width="wrap_content"      android:minWidth="300dp">
 <LinearLayout
  android:id="@+id/main_inner_layout"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:orientation="vertical"
  android:background="@color/white"
  android:layout_margin="3dp"
 >

  <TextView
   android:id="@+id/enter_txt"
   android:text="Enter Cup Code Below:"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:gravity="center_horizontal"
   android:textColor="@color/black"
   android:layout_gravity="left"
   android:typeface="sans"
   android:textSize="16dp"
   android:layout_margin="10dp"
      >
  </TextView>
  <RelativeLayout
    android:id="@+id/code_layout"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_marginLeft="10dp"
   android:layout_marginRight="10dp"
   android:background="@color/white"
  >
   <EditText
    android:text="12345"
    android:id="@+id/CodeInputOne"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginRight="10dp"
    android:layout_alignParentLeft="true"
   ></EditText>
   <EditText
    android:text="12345"
    android:id="@+id/CodeInputTwo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:layout_centerHorizontal="true"
   ></EditText>
   <EditText
    android:text="12345"
    android:id="@+id/CodeInputThree"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dp"
    android:layout_alignParentRight="true"
       ></EditText>
  </RelativeLayout>
  <RelativeLayout
   android:id="@+id/btn_layout_top"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_marginLeft="10dp"
   android:layout_marginTop="10dp"
   android:layout_marginRight="10dp"
   android:background="@color/white"
  >
   <Button
    android:id="@+id/AccountBtn"
    android:textStyle="bold"
    android:text="My Account"
    android:layout_marginRight="5dp"
    android:layout_alignParentLeft="true"
    android:onClick="ClickHandler"
    android:layout_height="40dp"
    android:layout_width="130dp"
   ></Button>
   <Button
    android:id="@+id/SubmitBtn"
    android:textStyle="bold"
    android:text="Submit"
    android:layout_marginLeft="5dp"
    android:layout_alignParentRight="true"
    android:onClick="ClickHandler"
    android:layout_height="40dp"
    android:layout_width="130dp"
   ></Button>

  </RelativeLayout>
  <RelativeLayout
   android:id="@+id/btn_layout_bottom"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_marginLeft="10dp"
   android:layout_marginRight="10dp"
   android:background="@color/white"
  >
   <Button
    android:id="@+id/RewardsBtn"
    android:textStyle="bold"
    android:text="Rewards"
    android:layout_marginRight="5dp"
    android:layout_alignParentLeft="true"
    android:onClick="ClickHandler"
    android:layout_height="40dp"
    android:layout_width="130dp"
       ></Button>
   <Button
    android:id="@+id/CancelBtn"
    android:textStyle="bold"
    android:text="Cancel"
    android:layout_marginLeft="5dp"
    android:layout_alignParentRight="true"
    android:onClick="ClickHandler"
    android:layout_height="40dp"
    android:layout_width="130dp"
   ></Button>
   </RelativeLayout>
 </LinearLayout>
</LinearLayout>

谢谢!

最佳答案

尝试使用

android:windowSoftInputMode="adjustPan|adjustResize"

Activity 。

关于android - 显示软键盘时背景布局移动 - android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3783318/

相关文章:

java - 清除和设置默认家庭应用程序

android - CallSuper 注释如何评估重写方法是否正在调用 super 方法?

android - 软键盘隐藏工具栏

javascript - 我希望 Android 软键盘在没有 JAVA 的情况下在正确的时刻有一个 "Done"按钮

android - GestureDetector的onScroll()和onFling()的区别

android - Android/Ionic 上 navigator.mediaDevices.getUserMedia 的 DOMException

android - 为所有移动设备设计计算器

Android 应用程序不断崩溃与 tabhost

android - 错误 android.content.res.Resources$NotFoundException : File from xml type layout resource ID #0x102000a

android - 软键盘隐藏编辑文本