Анимация перехода Android

Я хочу анимированный gif, так как это невозможно в Android, я использую отдельные кадры в переходе.

за исключением того, что класс перехода будет показывать только два кадра! Я видел другие методы анимации, но они, похоже, не подходили к тому, что я делал, или казались старыми и запутанными, как для более старой детской сборки Android.

<transition xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:drawable="@drawable/activateanima"></item>
  <item android:drawable="@drawable/activateanimb"></item>
  <item android:drawable="@drawable/activateanimc"></item>
  <item android:drawable="@drawable/activateanimc"></item>
  <item android:drawable="@drawable/activateanimd"></item>
  <item android:drawable="@drawable/activateanime"></item>
  <item android:drawable="@drawable/activateanimf"></item>
  <item android:drawable="@drawable/activateanimg"></item>
</transition>

Как мне анимировать изображение, чтобы оно вело себя как анимированный gif на месте. здесь нет поворотов или переводов. Использование андроид 2.1+


person CQM    schedule 22.08.2011    source источник


Ответы (2)


Вы после Frame animation? См. здесь. Будет воспроизводиться анимация стоя.

Пример с сайта выше:

XML-файл, сохраненный в res/anim/rocket.xml:

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false">
    <item android:drawable="@drawable/rocket_thrust1" android:duration="200" />
    <item android:drawable="@drawable/rocket_thrust2" android:duration="200" />
    <item android:drawable="@drawable/rocket_thrust3" android:duration="200" />
</animation-list>

Использовать:

ImageView rocketImage = (ImageView) findViewById(R.id.rocket_image);
rocketImage.setBackgroundResource(R.drawable.rocket_thrust);

rocketAnimation = (AnimationDrawable) rocketImage.getBackground();
rocketAnimation.start();
person Ricky    schedule 22.08.2011
comment
У меня получилось работать с этим, вроде. для моего ImageView это должен был быть R.id.rocket, где ракета была xml-файлом в моей папке с возможностью рисования, а не в моей папке с анимацией. я не создавал папку аним - person CQM; 23.08.2011

Просто используйте флиппер, чтобы переключаться между изображениями. Просто определите анимацию входа и выхода на 0 секунд, и они должны быть мгновенными. (но используйте альфу, чтобы быть уверенным). Преимущество флиппера просмотра заключается в автоматической анимации и автоматическом запуске.

person Kurru    schedule 22.08.2011
comment
Вид ласты лучше, однозначно. - person CQM; 08.05.2013