我试图找出如何在2个片段之间创建翻转动画.
我试过CardFlip培训作为指导,但似乎无法实现.
我正在使用Android支持包,并将其设置为补间动画,但不成功.
如何在片段之间实现翻转动画?
这是我从指南创建的第一个2 xml,也许你可以看到是否做错了.
screen_flip_left_in.xml:
- <?xml version="1.0" encoding="utf-8"?>
- <set xmlns:android="http://schemas.android.com/apk/res/android" >
- <!-- Before rotating,immediately set the alpha to 0. -->
- <alpha
- android:valueFrom="1.0"
- android:valueTo="0.0"
- android:propertyName="alpha"
- android:duration="0" />
- <!-- Rotate. -->
- <rotate
- android:valueFrom="-180"
- android:valueTo="0"
- android:propertyName="rotationY"
- android:interpolator="@android:anim/accelerate_decelerate_interpolator"
- android:duration="@integer/card_flip_time_full"/>
- <!-- Half-way through the rotation (see startOffset),set the alpha to 1. -->
- <alpha
- android:valueFrom="0.0"
- android:valueTo="1.0"
- android:propertyName="alpha"
- android:startOffset="@integer/card_flip_time_half"
- android:duration="1" />
- </set>
screen_flip_left_out.xml:
@H_502_16@
- <?xml version="1.0" encoding="utf-8"?>
- <set xmlns:android="http://schemas.android.com/apk/res/android" >
- <!-- Rotate. -->
- <rotate
- android:valueFrom="0"
- android:valueTo="180"
- android:propertyName="rotationY"
- android:interpolator="@android:anim/accelerate_decelerate_interpolator"
- android:duration="@integer/card_flip_time_full" />
- <!-- Half-way through the rotation (see startOffset),set the alpha to 0. -->
- <alpha
- android:valueFrom="1.0"
- android:valueTo="0.0"
- android:propertyName="alpha"
- android:startOffset="@integer/card_flip_time_half"
- android:duration="1" />
- </set>
解决方法
android:propertyName仅用于ObjectAnimator(Honeycomb)动画,不能查看Gingerbread的动画.卡片翻转动画只能使用蜂巢动画师api的.我创建了支持库的一个叉子,以允许使用
NineOldAndroids的Animator apis进行片段转换.使用我的
github project的动画转移分支.一旦你有修改后的支持库,查看
http://developer.android.com/training/animation/cardflip.html来制作动画Xml.
@H_502_16@
@H_502_16@