0

我正在使用表面视图中的连续图像运行逐帧动画。我通过以下方式宣布活动:

    public class myView extends SurfaceView implements SurfaceHolder.Callback 
    {
        public myView (Context paramContext, Listener paramListener)
        {
            super(paramContext);
            getHolder().addCallback(this);
           //Some Code
        }

      public void doDraw(Canvas paramCanvas, int imgpos)
      { 
            // Animation from image source using InputStream
      }

     public boolean onTouchEvent(MotionEvent paramMotionEvent)
     {     
        return super.onTouchEvent(paramMotionEvent);        
     }

    public void surfaceChanged(SurfaceHolder paramSurfaceHolder, int paramInt1, int paramInt2, int paramInt3)
    {        
            //Some Code
    }

    public void surfaceCreated(SurfaceHolder paramSurfaceHolder)
    {
             //Some code
    }


   public void surfaceDestroyed(SurfaceHolder paramSurfaceHolder)
   {
           //Some Code
   }

}

现在我正在尝试使用以下代码为上述动画结束事件实现监听器:

 public static abstract interface Listener
    {   
        public abstract void onAnimationEnd();
    }

我坚持使用上面的代码,任何人都可以建议我如何在另一个活动中实现这个接口,以便我可以发现当前动画在 Surface View Activity 中结束。

提前致谢,

蒂姆

4

1 回答 1

0

添加

setAnimationListener

到你的动画。如果您在 xml 文件中以可绘制的形式分配动画,请查看 此处了解如何获取可绘制动画。

于 2012-07-23T10:06:34.530 回答