Настроить 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" />