帧动画 drawable animation
通过xml文件声明一个帧动画
①在res目录下创建一个drawable目录 把用到的图片资源放到这个目录下 并且创建一个xml文件
根元素 animation-list可以设置一个属性 oneshot如果设置为true 动画只执行一次 执行之后停在最后一帧
animation-list 子元素item
<?xml version="1.0" encoding="utf-8"?> 2. <animation-list xmlns:android="http://schemas.android.com/apk/res/android" 3. android:oneshot="true" > //踹人的动画 4. <item android:drawable="@drawable/girl_1" android:duration="200" /> 5. <item android:drawable="@drawable/girl_2" android:duration="200" /> 6. <item android:drawable="@drawable/girl_3" android:duration="200" /> 7. <item android:drawable="@drawable/girl_4" android:duration="400" /> 8. <item android:drawable="@drawable/girl_5" android:duration="400" /> 9. <item android:drawable="@drawable/girl_6" android:duration="400" /> 10. <item android:drawable="@drawable/girl_4" android:duration="400" /> 11. <item android:drawable="@drawable/girl_5" android:duration="400" /> 12. <item android:drawable="@drawable/girl_6" android:duration="400" /> 13. <item android:drawable="@drawable/girl_4" android:duration="400" /> 14. <item android:drawable="@drawable/girl_5" android:duration="400" /> 15. <item android:drawable="@drawable/girl_6" android:duration="400" /> 16. <item android:drawable="@drawable/girl_7" android:duration="400" /> 17. <item android:drawable="@drawable/girl_8" android:duration="400" /> 18. <item android:drawable="@drawable/girl_9" android:duration="200" /> 19. <item android:drawable="@drawable/girl_10" android:duration="200" /> 20. <item android:drawable="@drawable/girl_11" android:duration="200" /> 21.</animation-list>
item 中drawable属性 对应当前帧使用的图片资源 duration指定每一帧播放的时长
②在界面的布局文件中 通过ImageView的background属性加载drawableanimation
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2. xmlns:tools="http://schemas.android.com/tools" 3. android:layout_width="match_parent" 4. android:layout_height="match_parent" 5. android:paddingBottom="@dimen/activity_vertical_margin" 6. android:paddingLeft="@dimen/activity_horizontal_margin" 7. android:paddingRight="@dimen/activity_horizontal_margin" 8. android:paddingTop="@dimen/activity_vertical_margin" 9. tools:context=".MainActivity" > 10. 11. <ImageView 12. android:id="@+id/iv_animation" 13. android:layout_width="wrap_content" 14. android:layout_height="wrap_content" 15. android:background="@drawable/drawableanimation" /> 16.</RelativeLayout>
③在java代码中 找到imageview 通过getbackground找到Drawableanimation 资源 然后开始动画
public class MainActivity extends Activity { 2. 3. @Override 4. protected void onCreate(Bundle savedInstanceState) { 5. super.onCreate(savedInstanceState); 6. setContentView(R.layout.activity_main); 7. ImageView iv_image = (ImageView) findViewById(R.id.iv_animation); 8. //找到imageview的背景资源 这个背景就是一个帧动画 强转成帧动画对应的AnimationDrawable对象 9. AnimationDrawable anim = (AnimationDrawable) iv_image.getBackground(); 10. //开启动画 11. anim.start(); 12. }
时间: 2024-10-12 21:19:39