安卓 : is there a way to properly set a SlidingDrawer width and height to half screen?

标签 android layout slidingdrawer

我必须在右侧设置一个 SlidingDrawer 并且在单击时它不应扩展到半个屏幕。我看到了很多教程,我设法或多或少地正确设置了它,但它目前将布局中的所有内容都推到了左边。这是我的 xml:

<LinearLayout android:layout_height="wrap_content"
    android:id="@+id/edition_content_linear" android:layout_width="fill_parent"
    android:layout_weight="1" android:background="@android:color/white">

    <LinearLayout android:layout_width="fill_parent"
        android:id="@+id/static_menu_layout" android:layout_height="fill_parent"
        android:layout_weight="2" android:visibility="gone" android:background="@drawable/ipad_category_back">

        <ExpandableListView android:id="@+id/static_expandable_list"
            android:layout_height="fill_parent" android:layout_width="fill_parent"
            android:drawSelectorOnTop="false" android:groupIndicator="@drawable/expandablelist_selector" android:indicatorLeft="210dp" android:indicatorRight="230dp"></ExpandableListView>

    </LinearLayout>

    <LinearLayout android:id="@+id/center_linear"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:layout_weight="1">

        <ImageView android:scaleType="centerInside"
            android:layout_height="fill_parent" android:layout_width="fill_parent"
            android:id="@+id/cover_image_big"></ImageView>

        <WebView android:id="@+id/story_webview"
            android:layout_height="fill_parent" android:layout_width="fill_parent"
            android:visibility="gone"></WebView>

    </LinearLayout>

    <SlidingDrawer android:id="@+id/slider_drawer"
    android:layout_width="250dp" android:layout_height="500dp"
    android:orientation="horizontal" android:layout_gravity="center_vertical"
    android:handle="@+id/slider_handle" android:content="@+id/slider_expandable_list_container">

    <ImageView android:id="@+id/slider_handle"
        android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:src="@drawable/menu_handler" />

    <RelativeLayout android:id="@+id/slider_expandable_list_container"
        android:layout_height="500dp" android:layout_width="250dp">
        <ExpandableListView android:id="@+id/slider_expandable_list"
            android:layout_height="fill_parent" android:layout_width="fill_parent"
            android:drawSelectorOnTop="false" android:indicatorLeft="210dp" android:layout_gravity="center_vertical"
            android:indicatorRight="230dp" android:groupIndicator="@drawable/expandablelist_selector"></ExpandableListView>

    </RelativeLayout>

   </SlidingDrawer>

</LinearLayout>

最佳答案

将滑动抽屉放在框架布局中总是更好。因为在 Framelayout 中, View 将一个接一个地绘制。然后即使你的抽屉打开它也会重叠在下面的 View 上。但请注意,在 Framelayout 抽屉中扩展到所有 framelayout 长度。如果你想限制抽屉展开的长度,那么给你的父框架布局一个长度。

关于安卓 : is there a way to properly set a SlidingDrawer width and height to half screen?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4873396/

相关文章:

android - 使用菜单更改背景颜色

javascript - React Native - 如何使用 StackNavigator 和 DrawerNavigator 管理每页的标题

java - 使用 JDBC 时出错 "java.lang.NullPointerException"

android - MediaRecorder 类设置音频源的问题 - setAudioSource() - 不支持的参数

layout - 如何在产品 View 页面显示类别自定义设计布局?

android - 在所有 Activity 中使用相同的 SlidingDrawer?

android - 在android中制作像You-Tube一样的自定义抽屉导航

layout - Highcharts - 在多层次和多布局树状图中隐藏子标签

java - 将 TextView 动态添加到相对布局。

SimonVT menuDrawer 中出现 java.lang.NullPointerException?