【功能说明】该方法用于获取动画的帧个数,也就是按照顺序播放了几张图片。该方法经常用于获取帧动画对象特性的场合。ide
【基本语法】public int getNumberOfFrames ()动画
【实例演示】下面经过代码来演示如何获取帧动画播放帧的个数。code
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 int num; ad.start(); //开始动画 num=ad.getNumberOfFrames(); //获取帧数 Toast.makeText(getApplicationContext(), "当前动画须要播放"+num+"帧", Toast.LENGTH_LONG).show(); //显示 } }); btn2.setOnClickListener(new View.OnClickListener() { //设置监听器 @Override public void onClick(View v) { // TODO Auto-generated method stub ad.stop(); //中止动画 } }); } }
在这段代码中,首先声明了帧动画对象。而后,在第一个按钮监听器中直接调用start方法来开始动画执行,经过 getNumberOfFrames方法获取帧数并显示。在第二个按钮监听器中直接调用stop方法来中止动画执行。这样,读者执行这段代码,当点击"执 行动画"按钮时,将看到动画播放,并显示动画的帧数,如图9.21所示。
对象