[android] 페이드 애니메이션

페이드 애니메이션

안드로이드 앱에서 뷰를 페이드 인하거나 페이드 아웃하는 효과를 주는 방법은 두 가지가 있습니다.

XML을 사용한 페이드 애니메이션

XML 리소스를 사용하여 애니메이션을 정의하는 방법입니다. res 폴더 내 “anim” 폴더를 생성하고, fade_in.xml과 fade_out.xml과 같은 파일을 생성합니다.

<!-- fade_in.xml -->
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:fromAlpha="0.0"
    android:toAlpha="1.0"
    android:duration="1000" />

<!-- fade_out.xml -->
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/decelerate_interpolator"
    android:fromAlpha="1.0"
    android:toAlpha="0.0"
    android:duration="1000" />

프로그래밍 방식으로 페이드 애니메이션 구현

애니메이션을 직접 제어하려면 코드에서 애니메이션 객체를 생성하고 실행해야 합니다.

// Fade In 애니메이션
AlphaAnimation fadeIn = new AlphaAnimation(0.0f, 1.0f);
fadeIn.setDuration(1000);
view.startAnimation(fadeIn);

// Fade Out 애니메이션
AlphaAnimation fadeOut = new AlphaAnimation(1.0f, 0.0f);
fadeOut.setInterpolator(new DecelerateInterpolator()); 
fadeOut.setDuration(1000);
view.startAnimation(fadeOut);

애니메이션 적용

뷰를 페이드 애니메이션으로 표시하려면 레이아웃 XML 파일이나 Java 코드에서 애니메이션을 설정해야 합니다.

// XML을 통한 애니메이션 적용
view.startAnimation(AnimationUtils.loadAnimation(context, R.anim.fade_in));

// 프로그래밍 방식으로 애니메이션 적용
Animation fadeOut = new AlphaAnimation(1.0f, 0.0f);
fadeOut.setDuration(1000);
view.startAnimation(fadeOut);

애니메이션을 사용하여 안드로이드 앱의 사용자 경험을 향상시키고, 사용자들의 시선을 끌어 앱의 가시성을 높일 수 있습니다.

참고자료: