2010-11-03 99 views
5

我在我的應用程序中有一個滑塊抽屜。如果我將wrap_content設置爲layout_height字段的值,則滑塊抽屜會在整個屏幕上展開。使用常量作爲高度也不是一個好的選擇。 是否可以有一個滑塊抽屜與它的內容的高度?設置滑塊抽屜高度

提前致謝!

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

回答

1

什麼是容器?一個LinearLayout?添加另一個空元素,並給它們兩個權重1.

+0

這是一個FrameLayout。我已將其更改爲LinearLayout並設置權重。但是同樣的事情。 – Gratzi 2010-11-04 07:45:29

+0

你可以發佈佈局嗎? – EboMike 2010-11-04 07:46:53

+0

我已將它發佈在最初的問題中。我做了一些修復,最後的結論是,如果我爲啞視圖和抽屜設置權重爲1,那麼它們的高度都等於屏幕的1/2。我想有一個高度等於其內容高度的滑動抽屜。 – Gratzi 2010-11-04 08:29:28

1

使用topOffset屬性爲SlidingDrawer

這樣子。

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