8

是否有可能以某种方式使用 Android 的 SlidingPaneLayout 来完成它所做的事情,除了从另一边?

即我想在屏幕的右侧而不是左侧滑动挡板以露出第二个窗格,并且它从右侧而不是左侧滑入。

理想情况下,我正在寻找一种方法来使用此布局或对其进行修改。

4

2 回答 2

0

我认为这是可能的,就像这个从底部做的一样。检查它和原始代码之间的区别,你就会知道如何去做。

于 2013-09-12T17:19:14.470 回答
0

我还没有尝试过,但我不明白为什么它不能与这样的东西一起使用:

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

<fragment
    android:id="@+id/content_pane"
    android:name="package.DetailFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:layout_marginRight="60dp"

    />

<fragment
    android:id="@+id/list_pane"
    android:name="package.MyListFragment"
    android:layout_width="300dp"
    android:layout_height="match_parent"
    android:layout_gravity="left"
    />

这样,您将在右侧拥有 ListFragment。现在,您想先打开哪个取决于您。如果您想首先显示左侧,则需要在 MainActivity 的 onCreate 方法中添加类似的内容:

    private SlidingPaneLayout mSlidingLayout;
    mSlidingLayout = (SlidingPaneLayout) findViewById(R.id.sliding_pane_layout);

    mSlidingLayout.setPanelSlideListener(new SliderListener());
    mSlidingLayout.openPane();

即使我迟到了,我希望这会有所帮助。

于 2014-09-02T06:55:39.663 回答