展会信息港展会大全

Android开发 Tween动画示例(XML定义的动画)
来源:互联网   发布日期:2015-09-24 19:29:54   浏览:1759次  

导读:1、在res/anim目录下新建XML文件:tween_anim.xml?xml version=1.0 encoding=utf-8?set xmlns:android=http://schemas.android.com/apk/res/androidalphaandroid:fro...

1、在res/anim目录下新建XML文件:tween_anim.xml

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<alpha

android:fromAlpha="0.2"

android:toAlpha="1.0"

android:duration="3000"

android:repeatMode="reverse"

android:repeatCount="10" />

<scale

android:fromXScale="0.2"

android:toXScale="1.0"

android:fromYScale="0.2"

android:toYScale="1.0"

android:pivotX="50%"

android:pivotY="50%"

android:duration="3000"

android:repeatMode="reverse"

android:repeatCount="10" />

<translate

android:fromXDelta="50"

android:toXDelta="100"

android:fromYDelta="50"

android:toYDelta="100"

android:duration="3000"

android:repeatMode="restart"

android:repeatCount="10" />

<rotate

android:fromDegrees="0"

android:toDegrees="360"

android:duration="3000"

android:repeatMode="restart"

android:repeatCount="10" />

</set>

2、在res/layout目录下新建XML文件:tween_anim_layout.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="match_parent"

android:layout_height="match_parent">

<ImageView

android:id="@+id/imgTween"

android:src="@drawable/c01"

android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:layout_weight="1.0" />

<Button

android:id="@+id/btnControl"

android:text="开始"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

</LinearLayout>

3、Activity里面添加代码:

package com.bison;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.animation.Animation;

import android.view.animation.AnimationUtils;

import android.widget.Button;

import android.widget.ImageView;

public class TweenAnimationDemo extends Activity {

// 声明一个开始停止的标识符

private boolean flags = true;

private ImageView imgTween;

private Button btnCtrl;

/** 初始化 */

public void init() {

imgTween = (ImageView) findViewById(R.id.imgTween);

// 声明Tween动画

final Animation anim = AnimationUtils.loadAnimation(this,

R.anim.tween_anim);

btnCtrl = (Button) findViewById(R.id.btnControl);

btnCtrl.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

if (flags) {

btnCtrl.setText("停止");

imgTween.startAnimation(anim);

flags = false;

} else {

btnCtrl.setText("开始");

imgTween.clearAnimation();

flags = true;

}

}

});

}

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.tween_anim_layout);

init();

}

}

PS:Tween动画有alpha(透明)、scale(缩放)、translate(移动)、rotate(旋转),每个有不同的定义,仔细研究。

赞助本站

人工智能实验室

相关热词: Tween 动画 XML

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港