SliderDrawer中可滚动的按钮列表

时间:2011-03-31 14:41:12

标签: android slider scrollable

经过几天的研究,没有运气。应该很简单,但我只是没有看到它。

有一个活动页面,其中包含一个SliderDrawer。 SlidingDrawer图标位于底部,点击或滑动幻灯片正确打开抽屉按钮列表。一切正常。我遇到的问题是,为了适应不同的屏幕尺寸和方向,以及可能添加额外的按钮,我需要SlidingDrawer的内容可滚动。布局如下。我已经尝试包装LinearLayout,它在ScrollView中保存按钮但没有成功。

建议?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
   <LinearLayout
   android:id="@+id/frontpagetitlewrapper"
   android:layout_height="wrap_content"
   android:layout_width="fill_parent"
   android:orientation="vertical">
    <TextView  
    android:id="@+id/top"
    android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="blah"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="20sp"
        android:gravity="center"
        android:layout_alignParentTop="true"
        />
    <TextView  
    android:id="@+id/mid"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="and"
        android:textColor="#000000"
    android:layout_below="@+id/top"
    android:textSize="16sp"
        android:textStyle="bold"
        android:gravity="center"
        />
    <TextView  
    android:id="@+id/bottom"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="blather"
        android:textColor="#000000"
    android:layout_below="@+id/mid"
        android:textSize="18sp"
    android:textStyle="bold"
    android:gravity="center"
    />
   </LinearLayout>
   <FrameLayout 
    android:layout_width="fill_parent" 
    android:id="@+id/frameLayout"
    android:layout_alignParentBottom="true">
    <SlidingDrawer android:layout_height="wrap_content" 
        android:handle="@+id/handle"
        android:content="@+id/content" 
        android:id="@+id/slide" 
        android:orientation="vertical" 
        android:layout_width="fill_parent"
    >
    <ImageView android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@id/handle" 
        android:src="@drawable/opendrawer">
    </ImageView>
    <ScrollView
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">
        <LinearLayout android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:id="@id/content" 
            android:orientation="vertical">
            <Button android:text="a" android:id="@+id/btnA" android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
            <Button android:text="b" android:id="@+id/btnB"   android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
            <Button android:text="c" android:id="@+id/btnC"   android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
            <Button android:text="d" android:id="@+id/btnD" android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
            <Button android:text="e" android:id="@+id/btnE" android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
            <Button android:text="f" android:id="@+id/btnF" android:layout_width="fill_parent" android:layout_height="wrap_content"  android:textStyle="bold" android:textSize="20dip"></Button>
        </LinearLayout>
    </ScrollView>
    </SlidingDrawer>
    </FrameLayout>
</RelativeLayout>

2 个答案:

答案 0 :(得分:2)

我认为你的问题是你已经用指令标记了嵌套的LinearLayout

android:id="@id/content"

以便SlidingDrawer用于内容的组件。 请尝试标记ScrollView。

答案 1 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>

<SlidingDrawer android:layout_width="wrap_content"
    android:id="@+id/SlidingDrawer" android:handle="@+id/slideHandleButton"
    android:content="@+id/contentLayout" android:padding="10dip"
    android:layout_height="250dip">
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@+id/slideHandleButton"
        android:background="@drawable/closearrow"></Button>
    <LinearLayout android:layout_width="wrap_content"
        android:id="@+id/contentLayout" android:orientation="vertical"
        android:gravity="center|top" android:padding="10dip"
        android:background="#C0C0C0" android:layout_height="wrap_content">


        <Button android:id="@+id/Button01" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="Content"></Button>
        <Button android:id="@+id/Button02" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="Content"></Button>
        <Button android:id="@+id/Button03" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="Content"></Button>
    </LinearLayout>
</SlidingDrawer>