今天研究了下动画效果,我想做一个小图片,蹦蹦跳跳的进入界面.最后停在事先布局好的位置上.
xml文件如下.整个过程900毫秒,蹦了两次.
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android ">
<!-- X轴一直平滑,从-80%p的位置移动到原始位置,
持续时间900秒,从动画启动后0毫秒后开始偏移 -->
<translate
android:fromXDelta="-80%p"
android:toXDelta="0"
android:duration="900"
/>
<!-- 抖动第一次.从起始Y坐标,往上偏移48个坐标,持续时间200毫秒,动画启动后100毫秒.开始偏移-->
<translate
android:fromYDelta="48"
android:toYDelta="-48"
android:duration="200"
android:startOffset="95"
/>
<!-- 抖动第二次,从起始Y坐标上48个坐标,抖回起始坐标Y,持续时间200毫秒,动画启动后300毫秒,开始偏移-->
<translate
android:fromYDelta="-48"
android:toYDelta="48"
android:duration="200"
android:startOffset="295"
/>
<!-- 抖动第三次,从起始Y坐标,向上偏移48个坐标,持续时间200毫秒,动画启动后500毫秒,开始偏移 -->
<translate
android:fromYDelta="48"
android:toYDelta="-48"
android:duration="200"
android:startOffset="495"
/>
<!-- 抖动第四次,从起始Y坐标上48个坐标,抖回起始坐标Y,持续时间200毫秒,动画启动后700毫秒,开始偏移-->
<translate
android:fromYDelta="-48"
android:toYDelta="48"
android:duration="200"
android:startOffset="695"
/>
</set>
<translate
android:fromXDelta="-80%p"
android:toXDelta="0"
android:duration="900"
/>
<!-- 抖动第一次.从起始Y坐标,往上偏移48个坐标,持续时间200毫秒,动画启动后100毫秒.开始偏移-->
<translate
android:fromYDelta="48"
android:toYDelta="-48"
android:duration="200"
android:startOffset="95"
/>
<!-- 抖动第二次,从起始Y坐标上48个坐标,抖回起始坐标Y,持续时间200毫秒,动画启动后300毫秒,开始偏移-->
<translate
android:fromYDelta="-48"
android:toYDelta="48"
android:duration="200"
android:startOffset="295"
/>
<!-- 抖动第三次,从起始Y坐标,向上偏移48个坐标,持续时间200毫秒,动画启动后500毫秒,开始偏移 -->
<translate
android:fromYDelta="48"
android:toYDelta="-48"
android:duration="200"
android:startOffset="495"
/>
<!-- 抖动第四次,从起始Y坐标上48个坐标,抖回起始坐标Y,持续时间200毫秒,动画启动后700毫秒,开始偏移-->
<translate
android:fromYDelta="-48"
android:toYDelta="48"
android:duration="200"
android:startOffset="695"
/>
</set>
本文介绍了一个使用XML定义的动画效果实现方案,通过平移动画使图片从屏幕外以跳跃方式出现并最终停留在指定位置。整个动画包含水平移动及四次上下抖动效果,总时长900毫秒。
1227

被折叠的 条评论
为什么被折叠?



