Прокручиваемый список кнопок в SliderDrawer - PullRequest
0 голосов
/ 31 марта 2011

Не повезло после нескольких дней исследования этого.Должно быть просто, но я просто не вижу этого.

Есть страница активности, на которой есть 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 ]

2 голосов
/ 11 декабря 2011

Думаю, ваша проблема в том, что вы пометили вложенный LinearLayout инструкцией

android:id="@id/content"

, так что это компонент, который SlidingDrawer использует для содержимого.Вместо этого попробуйте пометить ScrollView.

1 голос
/ 17 июня 2011
<?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>

...