Нуб к разработке игр, и у меня возникают проблемы с размещением AnimationDrawable на холсте SurfaceView. Это часть простой игры, пользователь касается экрана, и в это место помещается анимированный GIF, похожий на взрыв. Я могу сделать это с помощью растрового изображения, используя код, показанный ниже, но я застрял в конвертации в AnimationDrawable. Я мог бы создать AnimationDrawable из ImageView, но я также не могу найти способ вывести ImageView на холст ...
Я поступаю неправильно? Есть ли более простой способ заставить анимированный GIF-файл отображаться в координатах x, y на холсте SurfaceView?
Bitmap explodeBmp = BitmapFactory.decodeResource(getResources(), R.drawable.explode4);
canvas.drawBitmap(explodeBmp, coords.getX()-(explodeBmp.getWidth()/2), coords.getY()-(explodeBmp.getHeight()/2), paint);
Это вызывает исключение ClassCastException, если я пытаюсь преобразовать растровое изображение в AnimationDrawable и запустить его:
AnimationDrawable explosionAnimation = (AnimationDrawable) ((Drawable) new BitmapDrawable(explodeBmp));
explosionAnimation.start();