我为我的相关布局创建了滑动抽屉,其中包括一些按钮。但是当我调整抽屉的高度时,抽屉按钮的位置会改变而不是它的高度。这是我的 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 是用于在 Canvas 上绘制的类。当我将 SlidingDrawer 高度设置为填充父级时,我在布局的底部得到了按钮。但它的高度是 parent 的高度,我需要有限的高度,我所有的按钮都应该位于布局的底部...... 提前致谢......
您好,这是我得到的图像,第一个是设置壁板高度“fill_parent”时产生的,第二个是 100dip
最佳答案
它的发生是因为你所有的按钮都驻留在 RelativeLayout 中,它是 SliderDrawable 的 child ,所以你需要从中取出你的按钮,
做这样的事情
<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>
输出:
关于android - 滑动抽屉位置在调整高度时发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13025353/