Страницы

Поиск по вопросам

среда, 4 декабря 2019 г.

Анимация снизу вверх циклическая

#android #android_animation


Как сделать анимацию, в которой задний фон будет уходить вверх и появляться снизу?
Не так как в ответе, а чтобы картинка двигалась вверх и попиксельно вылезала снизу
сразу. Тоесть вот ряд пикселей ушел наверх и сразу появился снизу
    


Ответы

Ответ 1



Если вы хотите анимировать просто картинку, тогда всё просто. Внизу неё добавим ImageView, которому мы установим основную картинку. Разметка: Activity: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ImageView content = findViewById(R.id.content); final ImageView img = (ImageView) findViewById(R.id.imageView); img.setImageDrawable(content.getDrawable()); final int s = Animation.RELATIVE_TO_SELF; final TranslateAnimation animForContent = new TranslateAnimation(s, 0f, s, 0f, s, 0f, s, 1f); animForContent.setDuration(3000); final TranslateAnimation animForImg = new TranslateAnimation(0f, s, 0f, s, -1f, s, 0f); animForImg.setDuration(3000); animForImg.setAnimationListener(new AnimationListener() { public void onAnimationStart(Animation animation) {} public void onAnimationRepeat(Animation animation) {} @Override public void onAnimationEnd(Animation animation) { img.startAnimation(animForImg); content.startAnimation(animForContent); } }); img.startAnimation(animForImg); content.startAnimation(animForContent); }

Ответ 2



MainActivity.class public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ImageView img1 = (ImageView) findViewById(R.id.img1); Animation anim = AnimationUtils.loadAnimation(this, R.anim.translate); img1.startAnimation(anim); } activity_main.xml translate.xml

Ответ 3



Можно использовать ViewFlipper. Разметка: Activity: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); flippyFlipper = (ViewFlipper) findViewById(R.id.viewFlipper); Animation animFlipIn = AnimationUtils.loadAnimation(this, R.anim.flip_in); Animation animFlipOut = AnimationUtils.loadAnimation(this, R.anim.flip_out); flippyFlipper.setInAnimation(animFlipIn); flippyFlipper.setOutAnimation(animFlipOut); flippyFlipper.setFlipInterval(3000); flippyFlipper.showNext(); } flip_in: flip_out:

Комментариев нет:

Отправить комментарий