1

我为我的相关布局创建了滑动抽屉,其中包括一些按钮。但是当我调整抽屉的高度时,抽屉按钮的位置会改变而不是它的高度。这是我的xml文件.......

   <?xml version="1.0" encoding="utf-8"?>
 <FrameLayout
    android:visibility="visible"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 

    xmlns:android="http://schemas.android.com/apk/res/android">

 <com.measure.sizemesurment2.MyView
    android:id="@+id/DrawViewId"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    </com.measure.sizemesurment2.MyView >

  <SlidingDrawer
    android:id="@+id/drawer"
    android:layout_width="wrap_content"
    android:layout_height="100dip"
    android:content="@+id/content"
    android:handle="@+id/handle" >

  <Button
     android:id="@id/handle"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:background="@drawable/arrow" />

 <RelativeLayout
     android:id="@id/content"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:orientation="horizontal" >

     <ImageButton
         android:id="@+id/left"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:onClick="ButtonOnClick"
         android:src="@drawable/left" />

     <ImageButton
         android:id="@+id/right"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="40dp"
         android:onClick="ButtonOnClick"
         android:src="@drawable/right" />

     <ImageButton
         android:id="@+id/up"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="80dp"
         android:onClick="ButtonOnClick"
         android:src="@drawable/up" />

     <ImageButton
         android:id="@+id/down"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="120dp"
         android:onClick="ButtonOnClick"
         android:src="@drawable/down" />

     <Button
         android:id="@+id/plus"
         android:layout_width="40dp"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="180dp"
         android:onClick="ButtonOnClick"
         android:text="+"
         android:textSize="20dp" />

     <Button
         android:id="@+id/minus"
         android:layout_width="40dp"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="220dp"
         android:onClick="ButtonOnClick"
         android:text="-"
         android:textSize="20dp" />

     <Button
         android:id="@+id/ok"
         android:layout_width="60dp"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginLeft="260dp"
         android:onClick="ButtonOnClick"
         android:text="OK"
         android:textSize="20dp" />
   </RelativeLayout>
</SlidingDrawer>

</FrameLayout>

其中 MyView 是一个用于在画布上绘制的类。当我将 SlidingDrawer 高度设置为填充父级时,我在布局的底部获得了按钮。但它的高度是父母的高度,我需要有限的高度,我所有的按钮都应该放在布局的底部......提前谢谢......

嗨,这是我得到的图像,第一个是设置壁板 drwer 高度“fill_parent”时产生的,第二个是 100dip

图像1 图2

4

1 回答 1

3

它的发生是因为你所有的按钮都驻留在相对布局中,它是 SliderDrawable 的子级,所以你需要从中取出你的按钮,

做这样的事情

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:visibility="visible" >

    <SlidingDrawer
        android:id="@+id/drawer"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:content="@+id/content"
        android:handle="@+id/handle" >

        <Button
            android:id="@+id/handle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@android:color/white"
            android:textSize="50dp"
            android:text="^"
            android:textColor="@android:color/black" />

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

  <com.measure.sizemesurment2.MyView
    android:layout_below="@+id/drawer"
    android:layout_above="@+id/linear_bottom"
    android:id="@+id/DrawViewId"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    </com.measure.sizemesurment2.MyView >

    <LinearLayout
        android:id="@+id/linear_bottom"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/left"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick" />

        <ImageButton
            android:id="@+id/right"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick" />

        <ImageButton
            android:id="@+id/up"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick" />

        <ImageButton
            android:id="@+id/down"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick" />

        <Button
            android:id="@+id/plus"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick"
            android:text="+" />

        <Button
            android:id="@+id/minus"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick"
            android:text="-" />

        <Button
            android:id="@+id/ok"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:onClick="ButtonOnClick"
            android:text="OK" />
    </LinearLayout>

</RelativeLayout>

输出:

在此处输入图像描述

于 2012-10-29T08:56:42.903 回答