default 값으로 되어 있는 화면 전환 애니메이션은 너무 구리다ㅋ

엄청 삐까리한건 아마도 API나 오픈 소스를 통해서 찾아봐야할 것 같은데,

가장 깔끔한 페이드인, 페이드아웃 애니메이션을 적용해보려고 한다.

 

1. res 에 anim 라는 폴더를 추가하고, fadein.xml 과 fadeout.xml 파일을 생성한다.

anim 폴더

 

나는 다음과 같은 방법으로 파일을 추가했다.

그리고 파일 명과 함께 확장자를 적어주면 된다.

 

(파일생성과 파일명 적는 방법을 적어놓은 이유는 나같은 완전 초보자는 파일 생성도 힘들기 때문에 적어두었다......)

따라서, 더 좋은? 혹은 간편한 방법을 안다면 사용해도 무방합니다.

 

 

2. 각 파일에 다음과 같은 코드를 구현한다.

<!-- fadein.xml -->

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="500"
    android:fromAlpha="0.0"
    android:toAlpha="1.0" />
<!-- fadeout.xml -->

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="500"
    android:fromAlpha="1.0"
    android:toAlpha="0.0" />

각 파일에 다음고 같이 코딩하면 됩니다. 복붙 궈궈..

duration, fromAlpha, toAlpha 속성을 다음과 같이 지정해주면 됩니다.

각 안드로이드 속성을 확인하면 어떤 의미인지 대충 감이 오지요?-?

 

 

3.  화면 전환 intent 코드에 삽입한다. (intent 코드를 적용하는 java 파일에서 작업합니다.)

Button.setOnClickListener(new View.OnClickListener() {
	@Override
	public void onClick(View v) {
		Intent intent = new Intent(getApplicationContext(), 이동할 페이지의 자바 파일명.class);
		startActivity(intent);
		overridePendingTransition(R.animation.fadein, R.animation.fadeout);
	}
 });

 

다음과 같이 overrigePendingTransition 메서드를 추가해줬습니다.

 

추가적으로, 아무런 애니메이션을 주고 싶지 않다면 다음 코드를 사용하시면 됩니다.

overridePendingTransition(0, 0);

 

 

그럼 최종적으로 아름답게 스르륵- 스르륵- 넘어가는 앱이 될 것 입니다. ㅎ

+ Recent posts