zoukankan      html  css  js  c++  java
  • android 动画小结

    1、Animation Tween

    //xml中组合动画
    
    
    <set android:shareInterpolator="false">
        <scale
            android:interpolator="@android:anim/accelerate_decelerate_interpolator"
            android:fromXScale="1.0"
            android:toXScale="1.4"
            android:fromYScale="1.0"
            android:toYScale="0.6"
            android:pivotX="50%"
            android:pivotY="50%"
            android:fillAfter="false"
            android:duration="700" />
        <set android:interpolator="@android:anim/decelerate_interpolator">
            <scale
               android:fromXScale="1.4"
               android:toXScale="0.0"
               android:fromYScale="0.6"
               android:toYScale="0.0"
               android:pivotX="50%"
               android:pivotY="50%"
               android:startOffset="700"
               android:duration="400"
               android:fillBefore="false" />
            <rotate
               android:fromDegrees="0"
               android:toDegrees="-45"
               android:toYScale="0.0"
               android:pivotX="50%"
               android:pivotY="50%"
               android:startOffset="700"
               android:duration="400" />
        </set>
    </set>
    ImageView spaceshipImage = (ImageView) findViewById(R.id.spaceshipImage);
    Animation hyperspaceJumpAnimation = AnimationUtils.loadAnimation(this, R.anim.hyperspace_jump);//AnimationUtils实例化
    spaceshipImage.startAnimation(hyperspaceJumpAnimation);

    2、Animation Frame or drawable animation

    不能在oncreate中start
    It's important to note that the start() method called on the AnimationDrawable cannot be called during the onCreate() method of your Activity, 
    because the AnimationDrawable is not yet fully attached to the window. If you want to play the animation immediately, without requiring interaction, 
    then you might want to call it from the onWindowFocusChanged() method in your Activity, which will get called when Android brings your window into focus.
    
    <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
        android:oneshot="true">
        <item android:drawable="@drawable/rocket_thrust1" android:duration="200" />
        <item android:drawable="@drawable/rocket_thrust2" android:duration="200" />
        <item android:drawable="@drawable/rocket_thrust3" android:duration="200" />
    </animation-list>
    
    
    The AnimationDrawable class is the basis for Drawable animations.
    
    
     ImageView rocketImage = (ImageView) findViewById(R.id.rocket_image);
      rocketImage.setBackgroundResource(R.drawable.rocket_thrust);
      rocketAnimation = (AnimationDrawable) rocketImage.getBackground();
      
      在onWindowFocusChanged中执行// 该方法在Activity视图加载完之后调用
      rocketAnimation.start();
    

      3、Property Animation

    参考文章:

    http://www.eoeandroid.com/forum.php?mod=viewthread&tid=98092

    http://www.eoeandroid.com/forum.php?mod=viewthread&tid=173194

  • 相关阅读:
    使用ZeroMQ(clrzmq)实现异步通信
    WCF扩展之实现ZeroMQ绑定和protocolBuffer消息编码(一)概要设计
    .net 数据缓存(二)之Redis部署
    .net 数据缓存(一)之介绍
    如果css足够强大了,你还会用编程的方式实现去实现css已有的功能吗?
    我想做一个合格的工程师
    当新手使用JS库遇到问题怎么办
    JS(JavaScript)脚本库的积累
    ASP.NET MVC 必备开发环境
    z-albert之开启博文之路
  • 原文地址:https://www.cnblogs.com/lipeil/p/2651562.html
Copyright © 2011-2022 走看看