• 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

  • 相关阅读:
    HTML文档类型DTD与浏览器怪异模式
    css控制非固定文本自动换行
    CSS圆角兼容IE6
    css命名规则
    一个程序员的世界(三) 全:(原名:一个程序员的世界观)
    Apache Ignite 学习笔记(6): Ignite中Entry Processor使用
    Apache Ignite 学习笔记(五): Primary和backup数据同步模式和处理分片丢失的策略
    Apache Ignite 学习笔记(四): Ignite缓存冗余备份策略
    Apache Ignite 学习笔记(三): Ignite Server和Client节点介绍
    Apache Ignite 学习笔记(二): Ignite Java Thin Client
  • 原文地址:https://www.cnblogs.com/lipeil/p/2651562.html
Copyright © 2020-2023  润新知