【发布时间】:2013-12-05 13:10:13
【问题描述】:
我有相当复杂的布局。父级 - 滚动视图。然后里面有4个RelativeLayouts。其中之一包含 ExpandedListView。
就是这样:
<?xml version="1.0" encoding="UTF-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:foo="http://schemas.android.com/apk/res/com.assignmentexpert"
android:id="@+id/scrollNewMessage"
android:layout_width="fill_parent"
android:fillViewport="true"
android:layout_height="fill_parent"
>
<RelativeLayout
android:id="@+id/newMessagePanel"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="fill_parent">
<RelativeLayout
android:id="@+id/panelInteractions"
android:layout_width="wrap_content"
android:layout_height="75dp"
android:layout_below="@+id/panelButtons"
android:background="#738495"
android:orientation="horizontal" >
<RelativeLayout
android:id="@+id/deadlineLayout"
android:layout_width="170dp"
android:layout_height="fill_parent"
android:focusableInTouchMode="true"
android:focusable="true"
android:orientation="vertical"
>
<com.customitems.CustomTextView
android:id="@+id/textLabel"
android:text="Deadline:"
android:layout_height="wrap_content"
android:layout_width="115dp"
android:layout_marginBottom="0dp"
android:layout_marginTop="10dp"
android:focusableInTouchMode="true"
android:focusable="true"
foo:customFont="Roboto-Regular.ttf"
android:textSize="14sp"
android:gravity="left|center"
android:paddingLeft="10dp"
android:paddingTop="10dp"
android:textColor="#43576b"
android:textStyle="bold" />
<com.customitems.CustomTextView
android:id="@+id/deadlineLabel"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
foo:customFont="Roboto-Regular.ttf"
android:layout_below="@+id/textLabel"
android:gravity="top|left"
android:paddingLeft="10dp"
android:text="Deadline:"
android:textColor="#000000"
android:textSize="14sp"
android:textStyle="bold" />
</RelativeLayout>
<Button
android:id="@+id/btnPay"
android:layout_width="80dp"
android:layout_height="45dp"
android:layout_centerVertical="true"
android:layout_marginLeft="5dp"
android:focusableInTouchMode="true"
android:focusable="true"
android:background="@drawable/button_inactive"
android:layout_marginRight="20dp"
android:visibility="gone"
android:layout_toRightOf="@+id/deadlineLayout"
android:gravity="center_vertical|center_horizontal"
android:text="Pay"
android:textColor="#11375e"
android:textSize="18dp"
android:textStyle="bold" />
<com.customitems.CustomTextView
android:id="@+id/priceLabel"
android:text="N/A:"
android:textSize="18sp"
android:layout_height="fill_parent"
android:layout_width="75dp"
android:layout_alignParentRight="true"
android:paddingLeft="10dp"
android:gravity="center_vertical|center_horizontal"
android:textColor="#FFFFFF"
foo:customFont="Roboto-Regular.ttf"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/tableLayout1"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_below="@+id/panelInteractions"
android:layout_above="@+id/tableLayout2"
>
<com.customitems.CustomTextView
android:id="@+id/interactionId"
android:layout_width="150dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="Reply"
android:layout_marginTop="5dp"
android:layout_marginLeft="25dp"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:textStyle="bold"
foo:customFont="Roboto-Regular.ttf" />
<com.customitems.CustomEditText
android:id="@+id/editMessage"
style="@style/custom_edittext"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/interactionId"
android:gravity="top|left"
android:hint="Write your message"
foo:customFont="Roboto-Regular.ttf" >
</com.customitems.CustomEditText>
</RelativeLayout>
<RelativeLayout
android:id="@+id/tableLayout2"
android:layout_width="fill_parent"
android:layout_above="@+id/panelMessage2"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/btnAddFilesMessage"
style="@style/custom_button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/gray_button"
android:layout_centerHorizontal="true"
android:text="@string/btn_add_files"
/>
<include layout="@layout/file_list"
android:id="@+id/messageFileList"
android:tag="messageFileList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:layout_below="@+id/btnAddFilesMessage"
/>
</RelativeLayout>
<LinearLayout
android:id="@+id/panelMessage2"
android:layout_marginTop="10dp"
android:layout_width="fill_parent"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1.0">
<Button
android:id="@+id/btnSendMessage"
style="@style/custom_button"
android:layout_marginRight="10dp"
android:text="Send"
android:layout_weight="0.58"/>
<Button
android:id="@+id/btnCancelNewMessage"
style="@style/custom_button"
android:layout_marginLeft="10dp"
android:text="Cancel"
android:background="@drawable/gray_button"
android:layout_weight="0.42" />
</LinearLayout>
</RelativeLayout>
</ScrollView>
当我单击 EditText 时,它会缩小并显示软键盘和那些布局,其中包含 android:layout_alignParentBottom="true" 显示。我需要不缩小 EditText。它的原因是什么?也许在 ScrollView 的android:fillViewport="true" 中?或在最后一个布局的android:layout_alignParentBottom="true" 中。请告知如何正确组织这一切。
【问题讨论】:
-
请您准备一张您的屏幕上发生的事情的图像吗?还请注意,您不能在 Android 的滚动视图中使用 listView,因为它们都是滚动视图。
标签: android android-layout scrollview android-edittext