逐帧动画(2种方式)

来源:互联网 发布:淘宝有哪些明星潮店 编辑:程序博客网 时间:2024/06/03 09:28
////用代码编写    写成一个方法  public void runFrame(View view) {          //完全编码实现的动画效果          AnimationDrawable anim = new AnimationDrawable();          for (int i = 1; i <= 4; i++) {              //根据资源名称和目录获取R.java中对应的资源ID              int id = getResources().getIdentifier("f" + i, "drawable", getPackageName());              //根据资源ID获取到Drawable对象              Drawable drawable = getResources().getDrawable(id);              //将此帧添加到AnimationDrawable中              anim.addFrame(drawable, 300);          }          anim.setOneShot(false); //设置为loop          image.setBackgroundDrawable(anim);  //将动画设置为ImageView背景          anim.start();   //开始动画      }//用xml文件编写<!--     <item android:drawable="@drawable/suo1" android:duration="65"></item>      <item android:drawable="@drawable/suo2" android:duration="65"></item>      <item android:drawable="@drawable/suo3" android:duration="65"></item>      <item android:drawable="@drawable/suo4" android:duration="65"></item>    <item android:drawable="@drawable/suo1" android:duration="65"></item>      <item android:drawable="@drawable/suo2" android:duration="65"></item>      <item android:drawable="@drawable/suo3" android:duration="65"></item> </animation-list>frameAnim = (AnimationDrawable) getResources().getDrawable(R.drawable.bullet_anim);        // ImageView将AnimationDrawable设置为背景        mImageView = (ImageView) findViewById(R.id.iv_anim_player_screen);        mImageView.setBackground(frameAnim);<pre name="code" class="java">        frameAnim.start;


0 0
原创粉丝点击