toggle menu

간단한 DropDown, RiseUp 애니메이션 효과주기

2012. 6. 20. 15:50 Android

View에 애니메이션 효과를 주는 방법으로, 개인적으로 Custom Dialog가 나타날 때 애니메이션 효과를 사용했습니다.

 먼저 animation xml 파일을 생성해서 res/anim 폴더에 넣어주어야 합니다.


riseup.xml 파일
<?xml version="1.0" encoding="utf-8"?>
<set
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:interpolator="@android:anim/accelerate_interpolator" >

	<translate
		android:fromYDelta="50%p"
		android:toYDelta="0"
		android:duration="150" />

	<alpha
		android:fromAlpha="0.0"
		android:toAlpha="1.0"
		android:duration="150" />

</set>



dropdown.xml 파일
<?xml version="1.0" encoding="utf-8"?>
<set
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:interpolator="@android:anim/accelerate_interpolator" >

	<translate
		android:fromYDelta="-50%p"
		android:toYDelta="0"
		android:duration="150" />

	<alpha
		android:fromAlpha="0.0"
		android:toAlpha="1.0"
		android:duration="150" />

</set>


실제 JAVA 코드 상에서 적용은 아래와 같이 하면 됩니다.


//LayoutInflater 선언
LayoutInflater inflater = ((LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE));

//메뉴 레이아웃 XML 파일 불러와 View 선언
zoomDialogView = inflater.inflate(R.layout.zoom_layout, null);

zoomDialog.addContentView(zoomDialogView, new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
zoomDialog.setCanceledOnTouchOutside(true); //외부 터치하면 닫기

//애니메이션 적용
Animation anim = AnimationUtils.loadAnimation(Main, R.anim.riseup);
zoomDialogView.startAnimation(anim);

zoomDialog.show();


애니메이션 속성에 대한 보다 자세한 내용은 아래 링크를 참고하면 좋습니다.
http://blog.daum.net/hopefullife/98  



 

Android 관련 포스팅 더보기