android三类Animation详解_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:31:11
Original
881 Leute haben es durchsucht

我们搞android的都知道android的三类Animation,分别是Tween Animation ,Frame Animation和属性动画。

1.frame animation非常的简单,说白了就是由一张一张的图片组合而成,首先在drawable文件夹下创建一个类似下面的文件:

<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/ee_1" android:duration="10" /> <item android:drawable="@drawable/ee_2" android:duration="10" /> <item android:drawable="@drawable/ee_3" android:duration="10" /> <item android:drawable="@drawable/ee_6" android:duration="10" /> <item android:drawable="@drawable/ee_7" android:duration="10" /></animation-list>
Nach dem Login kopieren

然后在java文件中:

AnimationDrawable animationDrawable = (AnimationDrawable) getDrawable(R.drawable.frame_animation);frameAnimation = (TextView) findViewById(R.id.fram_animation);frameAnimation.setBackground(animationDrawable);animationDrawable.start();
Nach dem Login kopieren

就OK了

2.tween animation有四种形式,分别是alpha scale translate rotate ,相信大家都知道什么意思。使用tween animation有两种方式,一种是使用XML实现,一种是纯代码实现,在开发中我们也没有必要两种方式都非常熟悉,只要有一种比较熟就可以了,我个人爱好比较喜欢使用XML。首先创建一个anim文件夹,然后创建一个类似下面的文件:

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"    android:fillAfter="true"//保持变化后的状态    >    <rotate android:pivotY="50%"        android:pivotX="50%"        android:fromDegrees="0"        android:toDegrees="360"        android:duration="1000"        android:startOffset="0"//每一次的间隔时间        android:repeatCount="3"//重复次数        />    <scale android:pivotY="0"        android:pivotX="0"        android:fromXScale="1"        android:toXScale="0.5"        android:fromYScale="1"        android:toYScale="0.5"        android:duration="1000"        />    <translate android:duration="5000"        android:fromXDelta="0"//相对位置        android:fromYDelta="0"//相对位置        android:toXDelta="700"//相对位置        android:toYDelta="0"//相对位置        /></set>
Nach dem Login kopieren

上述代码需要注意的地方一标注

然后在java文件中调用:

Animation animation = AnimationUtils.loadAnimation(this,R.anim.tween_animation);animation.setAnimationListener(new Animation.AnimationListener() {    @Override    public void onAnimationStart(Animation animation) {    }    @Override    public void onAnimationEnd(Animation animation) {        Toast.makeText(getApplicationContext(),"完成",Toast.LENGTH_LONG).show();    }    @Override    public void onAnimationRepeat(Animation animation) {    }});view.startAnimation(animation);
Nach dem Login kopieren

是不是特别简单。

关于属性动画将在下篇博客中介绍到

来自: http://my.oschina.net/gef/blog/553040

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!