Как поддержать GESTURE, левое/правое скольжение, много эффектов перехода в приложении Android

В моем приложении я хочу перевернуть представление. Я видел такую ​​анимацию в Go SMS pro в Android. И то же самое, что я хочу в своем приложении для Android.

Я хочу перевернуть весь вид активности. Является ли это возможным? Я видел пример для флип в Android. Но в этом примере все представления находятся в одном и том же действии. Возможно ли установить такой вид для разных видов деятельности. или делать такой эффект при переходе от одной активности к другой?

Обратите внимание на оснастку эффекта Flip в Android enter image description here:

Если да, то, пожалуйста, дайте ссылку на любой демонстрационный пример или код.

Ответ 1

У меня возник вопрос, можно ли создать эффект трехмерного перехода между двумя действиями. Существует пример программы, которая делает это среди демонстраций API, но эта программа воспроизводит эффект перехода между двумя представлениями одного и того же Activity. Адаптация к тому же между двумя действиями не очень сложна, но имеет некоторые трюки...

Посмотрите Rotate3dAnimation.java, он был фактически скопирован из образца API Demos. Он использует камеру (а не аппаратную камеру, но объект инструментария 2D-графики), чтобы взглянуть на макет с разных ракурсов. Теперь это флип. Используя тот же механизм, вы также можете реализовать куб. Единственная проблема заключается в том, что для анимации куба вам нужен как исходящий, так и входящий макет, который делает приятное разделение на автономные действия вроде сложным (анимация должна работать как с входящим, так и исходящим макетом одновременно).

Ответ 2

Launcher в Cyanogenmod имеет много специальных эффектов, подобных этому, вы можете посетить их страницу github и посмотреть их код.

Ответ 3

попробуйте с этим кодом Эффект Diff animation

Здесь MainActivity.class

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Set window fullscreen and remove title bar, and force landscape orientation
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_main);
    setupJazziness(TransitionEffect.CubeOut);// change diff effect

}