如何在android中制作可扩展的面板布局?

时间:2012-05-31 16:40:35

标签: android android-layout

我在android中有非常复杂的布局吗?

我需要两个面板,如果一个扩展,另一个扩展,否则, 我想做一个像吸水器一样的行为但是因为我只能在视图中看到按钮而没有其他任何东西我都陷入了深深的麻烦。

enter image description here

这是我需要帮助的例子,我已经花了3天时间, 还没有找到答案。

这是我的代码`

                               

    <RelativeLayout android:id="@+id/imagesContent" android:orientation="vertical" android:layout_alignBottom="@+id/lhsLogo"
                    android:layout_width="wrap_content" android:layout_height="wrap_content">
        <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="3dp"
                   android:src="@drawable/orange_price_tag" android:layout_toLeftOf="@+id/lhsLogo" android:layout_alignBottom="@+id/lhsLogo" />
        <LinearLayout android:layout_centerHorizontal="true" android:orientation="vertical" android:layout_width="wrap_content"
                      android:layout_height="wrap_content">
            <TextView android:layout_width="fill_parent" android:layout_height="0dp" android:text="50%" android:singleLine="false"
                      android:textColor="#ffffff" android:textSize="17dp" android:id="@+id/discountTypeNumbers" android:layout_weight="1" />
            <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="הנחה" android:singleLine="false"
                      android:textColor="#ffffff" android:textSize="14dp" android:id="@+id/discountTypeText" />
        </LinearLayout>
    </RelativeLayout>

    <TextView android:id="@+id/detailsTextContent"
              android:layout_below="@+id/imagesContent"
              android:layout_width="fill_parent"
              android:layout_height="200dp"
              android:textSize="11dp"
              android:layout_marginLeft="10dp"
              android:layout_marginRight="10dp"
              android:scrollbars = "vertical"
              android:layout_marginTop="10dp"
              android:text="some textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome textsome
                            textsome textsome textsome textsome textsome"
              android:singleLine="false" />

    <RelativeLayout android:id="@+id/frame"
                    android:background="#ffffff"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:layout_alignParentBottom="true">
        <!--... stuff you want to cover at full-size ...-->
        <LinearLayout
                android:id="@+id/special_details_buttons"
                android:layout_marginTop="5dp"
                android:layout_marginLeft="5dp"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content">

            <ImageView android:id="@+id/specialTerms"
                       android:layout_width="wrap_content"
                       android:layout_height="fill_parent"
                       android:layout_marginLeft="2dp"
                       android:src="@drawable/special_terms"  />

            <ImageView android:layout_width="wrap_content"
                       android:layout_height="fill_parent"
                       android:layout_marginLeft="5dp"
                       android:src="@drawable/special_details" />

            <CheckBox android:id="@+id/setFavorite" style="@style/favorites_button" android:button="@drawable/favorites_button"/>

            <ImageView android:id="@+id/acceptTerms"
                       android:src="@drawable/accept_special"
                       android:layout_width="wrap_content"
                       android:layout_height="fill_parent"
                       android:layout_marginLeft="48dp"
                    />
        </LinearLayout>

        <RelativeLayout
                android:layout_below="@+id/special_details_buttons"
                android:layout_width="fill_parent"
                      android:layout_height="wrap_content"
                      android:layout_gravity="bottom"
                      android:orientation="vertical">

            <il.co.package.widgets.WrappingSlidingDrawer
                    android:id="@+id/drawer"
                    android:layout_width="fill_parent"
                    android:layout_height="200dp"
                    android:content="@+id/content"
                    android:handle="@+id/handle">

                <RelativeLayout
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:id="@+id/handle">

                    <ImageView android:id="@+id/slide_handle"
                               android:src="@drawable/expand_open"
                               android:layout_width="170dp"
                               android:layout_height="21dp"
                               android:layout_alignParentRight="true" />
                </RelativeLayout>

                <LinearLayout
                        android:gravity="center"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:background="#ffffff"
                        android:id="@+id/content">
                </LinearLayout>

            </il.co.package.widgets.WrappingSlidingDrawer>
        </RelativeLayout>
    </RelativeLayout>
</RelativeLayout>

`

1 个答案:

答案 0 :(得分:6)

在制作动画时,您必须增加和减少布局的高度。看到这个答案,几乎是你需要的。 Android: Expand/collapse animation