2013-08-05 4 views
8

Возможно ли каким-то образом использовать SlidingPaneLayout для Android, чтобы сделать именно то, что он делает, кроме как с противоположной стороны?Использование SlidingPaneLayout с правой стороны?

I.e. Я хочу, чтобы рамка прорисовывала правую часть экрана вместо левой стороны, чтобы открыть вторую панель, и она скользит справа, а не слева.

Идеально я ищу способ сделать это с помощью этого макета или его модификации.

+0

Привет, saimonjingai, получил какое-либо решение для перемещения SlidingPaneLayout вправо .. PLS помочь мне, если вы нашли ... – Adi

+0

Кто-нибудь из вас понял это? – Michiel

ответ

0

Я думаю, что это возможно, так же, как this one сделал это снизу. проверьте разницу между ним и исходным кодом, и вы будете знать, как это сделать.

+1

Это не Slidingpanelayout, это новая библиотека. – Karl

+0

true. Тем не менее, он имеет множество функций и является единственным, который отлично работал для меня. –

0

Я не пробовал еще, но я не понимаю, почему он would't работать с чем-то вроде этого:

<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 на правой стороне. Теперь, который вы хотите открыть первым, зависит от вас. Если вы хотите, чтобы иметь левую сторону, показывая сначала должны были бы иметь что-то подобное в OnCreate метод вашего MainActivity:

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

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

даже то я опаздываю я надеюсь, что это помогает.

Смежные вопросы