[Android动画] 帧动画-添加动画帧( addFrame)四

【功能说明】该方法用于为帧动画对象添加动画帧。该方法主要用于动态修改帧动画内容的场合,能够根据须要增长一些动画帧。ide

【基本语法】public void addFrame (Drawable frame, int duration)动画

参数说明code

frame:动画帧的Drawable对象。对象

duration:动画帧的持续时间,单位为毫秒。get

【实例演示】下面经过代码来演示如何实现一个简单的帧动画。it

public class firstActivity extends Activity {  
/** Called when the activity is first created. */  
@Override  
public void onCreate(Bundle savedInstanceState) {               //重载onCreate方法  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
 
    final ImageView image=(ImageView)findViewById(R.id.imageView1); //ImageView对象  
    Button btn1=(Button)findViewById(R.id.button1);             //按钮对象  
    Button btn2=(Button)findViewById(R.id.button2);  
    final AnimationDrawable ad=(AnimationDrawable)image.getBackground();                                                                        //声明帧动画对象  
    btn1.setOnClickListener(new View.OnClickListener() {            //设置监听器  
          
        @Override  
        public void onClick(View v) {  
            // TODO Auto-generated method stub    
            ad.addFrame(getResources().getDrawable(R.drawable.p0), 100);    //添加帧  
            ad.addFrame(getResources().getDrawable(R.drawable.p1), 100);    //添加帧  
            ad.addFrame(getResources().getDrawable(R.drawable.p2), 100);    //添加帧  
            ad.addFrame(getResources().getDrawable(R.drawable.p3), 100);    //添加帧  
            ad.addFrame(getResources().getDrawable(R.drawable.p4), 100);    //添加帧  
            ad.start();                                     //开始动画  
        }  
    });  
    btn2.setOnClickListener(new View.OnClickListener() {            //设置监听器  
          
        @Override  
        public void onClick(View v) {  
            // TODO Auto-generated method stub  
            ad.stop();                                      //中止动画  
        }  
    });  
}  
}

在这段代码中,首先声明了帧动画对象。而后,在第一个按钮监听器中使用addFrame方法添加了动画帧,以后直接调用start方法来开 始动画执行,在第二个按钮监听器中直接调用stop方法来中止动画执行。这样,读者执行这段代码,当点击"执行动画"按钮时,将看到动画效果执行了两遍。 这是由于咱们增长的动画帧与原有的动画帧相同,至关于播放了两次。io

相关文章
相关标签/搜索