开发者

Set slider drawer height

I have a slider drawer in my application. If I set wrap_content as a value for the layout_height field, the slider drawer will stretch on the whole screen. Using a constant as a height is not a good alternative either. Is it possible to have a slider drawer with the height of it's content?

  <LinearLayout 
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" 
  android:id="@+id/frameLayout" 
  android:layout_gravity="bottom"
  android:orientation="vertical">
    <View
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_weight="1" 
      android:background="@color/blue"/>
    <SlidingDrawer 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1" 
        android:handle="@+id/handle" 
        android:content="@+id/content"
        android:id="@+id/slide" 
        android:orientation="vertical">
    <RelativeLayout android:id="@+id/handle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/list_header"> 
         <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true&q开发者_JS百科uot;
            android:layout_marginLeft="@dimen/padding"
            android:textColor="@color/black"
            android:textStyle="bold"
            android:text="@string/ingredients_list_title"/>
         <ImageView
            android:id="@+id/handle_indicator"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="@dimen/padding"
            android:src="@drawable/arrow_up"
         />
    </RelativeLayout>
    <RelativeLayout android:id="@+id/content"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/list_row_background">
        <LinearLayout android:id="@+id/list_ant_title"
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
             android:layout_above="@+id/gallery"
             android:orientation="vertical">
              <ListView 
                android:id="@+id/listview"
                android:layout_width="fill_parent" 
                android:layout_height="wrap_content"
                android:divider="@drawable/divider"
                android:cacheColorHint="@color/transparent"
                android:fadingEdge="none"/>
        </LinearLayout>
        <Gallery 
            android:id="@+id/gallery"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:layout_alignParentBottom="true"
            android:background="@drawable/list_row_background"/>
    </RelativeLayout>
</SlidingDrawer>


What's the container? A LinearLayout? Add another empty element, and give them both a weight of 1.


Use topOffset attribute for SlidingDrawer.

like this.

<SlidingDrawer 
    ...
    android:topOffset="800px">
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜