如何在关闭状态下减少SlidingPaneLayout Android中覆盖布局的宽度

时间:2014-05-22 01:58:21

标签: android slidingmenu sliding slidingpanelayout

我正在使用android SlidePaneLayout ,其中有两个Linearlayout, leftpane 右窗,其中右窗格在左窗格中滑动关闭状态。 我需要将右窗格的宽度减小为 250dp

无论我指定的宽度如何,右窗格都会在关闭状态中覆盖整个窗口。我想缩小右窗格的宽度,这样我就可以在关闭状态的背景上看到左侧窗格的一点点。

这是我的SlidingPaneLayout xml。

<android.support.v4.widget.SlidingPaneLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"
     android:id="@+id/sp" > 

     <!-- Left side pane. (Master) --> 
     <LinearLayout android:id="@+id/leftpane" 
         android:layout_width="250dp" 
         android:layout_height="match_parent" 
         android:layout_gravity="left"
         android:background="#DFDEFF"
         android:orientation="horizontal" >
         </LinearLayout> 

         <!-- Right side page. (Slave) --> 
         <LinearLayout android:id="@+id/rightpane" 
             android:layout_width="250dp" 
             android:layout_height="match_parent"
             android:layout_gravity="right" 
             android:background="#CFDEFF"
             android:layout_weight="1" 
             android:orientation="horizontal">
         </LinearLayout> 

</android.support.v4.widget.SlidingPaneLayout>

我已经尝试了网络中所有可用的教程,但它无法正常工作。

请帮助我。

1 个答案:

答案 0 :(得分:0)

我已经对这个话题感到困惑了一段时间以及...... 帮助我的是在 RIGHT 窗格中添加marginLeft。 所以你有这样的事情:

<!-- Right side page. (Slave) --> 
     <LinearLayout android:id="@+id/rightpane" 
         android:layout_width="250dp" 
         android:layout_height="match_parent"
         android:layout_gravity="right" 
         android:background="#CFDEFF"
         android:layout_weight="1" 
         android:orientation="horizontal"
         android:layout_marginLeft="200dp">
     </LinearLayout> 

在左侧添加200dp边框。 (当关闭时,左侧窗格的200dp可见)