Android 实现动画的2种方式(动画形式如:上下移动)

一、代码实现动画:

Activity中核心代码:

int[] location = new int[2];
viewObj.getLocationOnScreen(location);//获取视图位置
int x = location[0];
int y = location[1];
TranslateAnimation tAnim = new TranslateAnimation(x, x, y, y+15);//设置视图上下移动的位置
tAnim .setDuration(1000);
tAnim .setRepeatCount(Animation.INFINITE);
tAnim .setRepeatMode(Animation.REVERSE);
viewObj.setAnimation(alphaAnimation2);
tAnim .start();

二、XML实现动画:

Activity中核心代码:

Animation shakeAnim = AnimationUtils.loadAnimation(this, R.anim.shake_y);
viewObj.startAnimation(shakeAnim);

shake_y的XML文件代码:

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromYDelta="0"
    android:interpolator="@anim/cycle"
    android:toYDelta="10"
    android:repeatCount="infinite">

</translate>

cycle 的XML文件代码:

<?xml version="1.0" encoding="utf-8"?>
<cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android" 
android:cycles="2" />

以上2种均可以实现上下动画效果,如果要取消动画就调用cancel()方法,要清楚动画就用clearAnimation()方法!

转载于:https://www.cnblogs.com/fly-allblue/p/3656464.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值