SliderDrawer 中的可滚动按钮列表

发布于 2024-10-27 21:26:25 字数 4034 浏览 1 评论 0原文

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

有一个活动页面,其中有一个 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>

No luck after a few days of researching this one. Should be simple, but I'm just not seeing it.

There is an activity page, which has a SliderDrawer. SlidingDrawer icon sits at the bottom, on click or swipe slides open drawer correctly with list of buttons. That all works fine. The problem I'm having is that to accomodate different screensizes and orientations, and the likely addition of additional buttons, I need the contents of that SlidingDrawer to be scrollable. Layout is below. I have tried wrapping the LinearLayout that holds the buttons in a ScrollView without success.

Suggestions?

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

荆棘i 2024-11-03 21:26:25

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

android:id="@id/content"

所以这是 SlidingDrawer 用于内容的组件。
尝试改为标记 ScrollView。

I think your problem is that you've tagged the nested LinearLayout with instruction

android:id="@id/content"

so that's the component the SlidingDrawer is using for the content.
Try tagging the ScrollView instead.

醉南桥 2024-11-03 21:26:25
<?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>

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文