# Android

[Android] 화면 전환 애니메이션 - Activity

강현들 2022. 2. 18. 18:37
728x90
반응형
overridePendingTransition(R.anim.enter, R.anim.exit);

 

첫 번째 인자는 현재 화면의 애니메이션이고, 두 번째 인자는 사라지는 화면의 애니메이션이다.

 

 

1. Activity가 시작할 때

 

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        overridePendingTransition(R.anim.enter, R.anim.exit);

 

2. Activity를 전환할 때

 

Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
overridePendingTransition(R.anim.enter, R.anim.exit);

 

전환할 때는 finish( )함수 이후에 사용해야 한다.

<애니메이션 생성>

애니메이션은 [res]디렉터리에 [anim]디렉터리를 만들고, 우클릭 - [new] - [Animation Resource File]을 생성해서 효과를 부여한다.

 

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="500"
        android:fromXDelta="100%"
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:toXDelta="0%" />
</set>

 

 

위의 예시코드는 오른쪽에서 왼쪽으로 화면이 슬라이드 되는 듯한 효과를 나타내고 있다.

이 외에도 rotate등 다양한 효과들이 존재한다.

 

 

728x90
반응형