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

时间:2010-09-23 23:58:36

标签: android android-layout android-softkeyboard

我有一个输入弹出窗口,我正在我的活动主视图中显示,其中有一些编辑框。显示弹出窗口时,活动视图在后台保持灰色(与警告对话框一样)。

我遇到的问题是当键盘出现时弹出窗口正常,但后台的活动视图正在向上移动。该视图应该暂停,我根本不会想到它会受到键盘的影响。有没有办法阻止这种情况发生?

我尝试将android:windowSoftInputMode =“adjustPan”添加到活动和弹出窗口,但没有运气。

这是我的活动布局:

<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>

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试使用

android:windowSoftInputMode="adjustPan|adjustResize"

活动。