Я пытаюсь создать анимацию из нескольких изображений PNG.Вот мой код:
AnimationDrawable animation = new AnimationDrawable();
for (int i = 0; i < translate_text.length(); i++)
{
byte[] byteArray = Base64.getDecoder().decode(client._fromServer.elementAt(i));
Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
ImageView image = (ImageView) findViewById(R.id.sign);
image.setImageBitmap(Bitmap.createScaledBitmap(bmp, image.getWidth(), image.getHeight(), false));
animation.addFrame(image.getDrawable(), 1000);
}
animation.setOneShot(true);
animation.start();
, но при этом отображается только последний кадр ... Есть идеи?
Редактировать: Вероятно, следовало сделать это раньше, но здесь идет речь:
translate_text - это строка.Он представляет последовательность изображений.Например, если строка «bob», тогда должно быть 3 изображения: буква B, буква O и буква B.
client._fromServer - вектор строк.Каждая строка - это само изображение , закодированное в base64.Вот почему client._fromServer.elementsAt (i) - это строка, которую необходимо декодировать и преобразовать в byteArray.