Android Study
Android Study(애니메이션)
Box Maker
2023. 4. 10. 21:46
1. Animation
앱을 개발할 때 시각적으로 더 재밌고 예쁘게 개발하기 위해서 안드로이드는 애니메이션 기능을 제공한다.
여러가지 애니메이션들이 있지만 이 글에서는 object animator를 다뤄보겠습니다.
1) ObjectAnimator
- 하나의 뷰에서 간단한 애니메이션을 이용하고자 하지만 반복적으로 동작하기를 바란다면, ObjectAnimator를 사용하면 된다.
- ObjectAnimator의 특별한 기능이라고 한다면 XML을 이용하여 애니메이션을 만들 수 있는 장점이 있다.
shake_animations.xml
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="150"
android:fromDegrees="-10"
android:pivotX="30%"
android:pivotY="30%"
android:repeatCount="1"
android:repeatMode="reverse"
android:toDegrees="10"
/>
- 위와 같이 애니메이션 액션을 설정한다.
MainActivity.java
private void shakeAnimation() {
Animation shake = AnimationUtils.loadAnimation(MainActivity.this,
R.anim.shake_animation);
binding.cardView.setAnimation(shake);
shake.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
binding.questionTextview.setTextColor(Color.RED);
}
@Override
public void onAnimationEnd(Animation animation) {
binding.questionTextview.setTextColor(Color.WHITE);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
}
- shakeAnimator 메소드를 생성한다.
- shake_animation.xml파일을 해당 파일로 shake라는 변수에 가져온다.
- cardView위젯에 해당 애니메이션을 적용시킨다.
- 애니메이션의 액션으로 빨간색으로 시작하여 하얀색으로 글자색이 바뀌도록 한다.
- 반복적인 액션으로 앱화면에서는 글자색이 빨간색에서 하얀색으로 깜빡거리게 보인다.