Настроить FlippableStackView

Я нашел эту библиотеку, и я пытаюсь настроить ее. То, что я пытаюсь сделать, это изменить свайп с левого-правого на правый левый. Это изображение того, что я хочу.

Я также обнаружил, что другие пытаются сделать то же самое, как вы можете прочитать здесь.

Я пытаюсь изменить метод onLayout в OrientedViewPager

protected void onLayout(boolean changed, int l, int t, int r, int b)

но я потерпел неудачу, потому что я не понимаю, как это работает. Я думаю, что часть, которую я должен изменить, это та, которая начинается здесь

// Page views. Do this once we have the right padding offsets from above.
        for (int i = 0; i < count; i++) {
            final View child = getChildAt(i);

но я не знаю, как правильно изменить код.

В открытом выпуске ниже я читал, что Блипинск сказал, что кусок кода, который нуждается в изменениях, находится в StackPagerTransformer, а не в OrientedViewPager, но я также читал здесь http://developer.android.com/reference/android/support/v4/view/ViewPager.PageTransformer.html что преобразователь страницы обычно вызывается только для анимации, пока изменяется страница / фрагмент.

Не могли бы вы сказать мне, как это сделать? Где я могу найти хорошую книгу или учебное пособие о том, как настраивать создание групп просмотра, стека и транслятора страниц? Спасибо

РЕДАКТИРОВАТЬ 1 В настоящее время я использовал хак, который не так хорош, но он работает. Я установил поворот на 180 здесь

<com.myapp.app1.flippablestackview.FlippableStackView
    android:id="@+id/flippable_stack_view_pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clipToPadding="false"
    android:rotation="180" />

и то же самое в содержании фрагмента, созданного в пейджере

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="265dp"
    android:layout_height="400dp"
    android:background="@color/white"
    android:padding="30dp">

    <TextView
        android:id="@+id/page_one_text_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:rotation="180"
        android:text="CONTENT" />

    <ImageView
        android:id="@+id/page_one_image_content"
        android:layout_width="250dp"
        android:layout_height="250dp"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:rotation="180" />

</RelativeLayout>

Я думаю, что это не элегантное решение, но у меня нет времени, чтобы исправить ситуацию в данный момент.

1 ответ

Я предлагаю вам использовать FancyCoverFlow

fancyCoverFlow = new FancyCoverFlow(context);
fancyCoverFlow.setMaxRotation(45);
fancyCoverFlow.setUnselectedAlpha(0.3f);
fancyCoverFlow.setUnselectedSaturation(0.0f);
fancyCoverFlow.setUnselectedScale(0.4f);

XML

<at.technikum.mti.fancycoverflow.FancyCoverFlow
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        fcf:maxRotation="45"
        fcf:unselectedAlpha="0.3"
        fcf:unselectedSaturation="0.0"
        fcf:unselectedScale="0.4" />
Другие вопросы по тегам