Android страница Curl анимация - PullRequest
58 голосов
/ 10 июня 2010
  1. Есть ли простой способ сделать анимацию перелистывания страницы Curl? Анимация Curl - это анимация переворачивания страниц, в том числе прокручивания страницы выше и теней над нижней страницей.
  2. Каков рекомендуемый способ создания «галереи», отображающей две страницы одновременно (как в книге)?

    Это:

    1. Позволяет адаптеру отображать линейное расположение двух изображений одновременно? (он не позволяет мне показывать страницу, переворачивающую другую, как книга)
    2. Используя две страницы, размещая что-то одно рядом с другим, а затем, когда пришло время анимировать, переместить следующие две страницы? Как лучше, чтобы левая страница перелистывалась на правую страницу?

Ответы [ 4 ]

23 голосов
/ 28 февраля 2011

Я реализую скручивание 2D-страницы на родном холсте. Проверьте мой ответ в: Реализация скручивания страницы на Android?

РЕДАКТИРОВАТЬ: код проекта моей реализации: http://code.google.com/p/android-page-curl/ РЕДАКТИРОВАТЬ 2: Ссылки обновлены

6 голосов
/ 23 апреля 2012

Я использую этот код. Это действительно идеально подходит для понимания и использования. Большое спасибо Harism

Ссылка GitHub для анимации скручивания страницы в Android с OpenGL

2 голосов
/ 25 июня 2010

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

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

Проблема на данный момент заключается в том, что вы все еще рисуете текст дважды в одном и том же месте, поэтому вы захотите смешать текст первой страницы с анимацией под ним.Таким образом, текст, который находится над 0 альфа-разделами, будет невидимым.Он не сгибается с анимацией, так что это все еще может быть проблемой, но в зависимости от скорости сальто, которое все еще может быть в порядке.Когда анимация закончится, просто установите первую страницу = вторую, анимацию сбросьте на обычный белый, а вторую страницу = новую вторую страницу.

Эффект тени можно сделать, просто частично выполнив некоторыечерный позади страницы переворачивать анимацию.Нарисуйте на второй странице (как уже делает анимационный слой) и вуаля!

Я полагаю, что ваш вопрос на двух страницах может использовать очень похожий метод.Удачи

1 голос
/ 13 декабря 2011

Это 3D анимационный проект (на основе OpenGL 2.0) - http://anettosoftware.co.uk/npc.php

...