안드로이드에서 애니메이션 처리를 하기위해서는 두가지를 해야 합니다.
animation 을 정의하는 xml 파일을 작성하고, 해당 xml 을 view 나 activity 에 적용하는 작업 입니다.

<Animation xml 만들기>
- pull_down_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
 <translate android:fromYDelta="0" android:toYDelta="100%p" android:duration="300"/>
 
</set>

위 소스는 타겟이 pull_down 으로 없어지는 애니메이션을 정의한 것입니다.
이러한 움직임을 정의하는 translate 태그 말고도, 투명도를 제어하는 alpha 태그, 회전을 제어하는 rotate 태그, 크기를 제어하는 scale 태그가 있습니다.

<Animation 적용하기>
이와같은 xml 은 아래와같이 적용하고 또 리스너를 이용해서 애니메이션의 시작/끝 지점을 잡아낼 수 있습니다.
 Animation anim = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.push_up_webview);   
   anim.setAnimationListener(new Animation.AnimationListener() {
    public void onAnimationStart(Animation animation) {
    }
    
    public void onAnimationRepeat(Animation animation) {
    }
    public void onAnimationEnd(Animation animation) {
     runOnUiThread(new Runnable() {
      public void run() {
       progressLoading.setVisibility(View.GONE);
      }
     });     
    }
   });   
   progressLoading.startAnimation(anim);

신고
by cranix 2011.07.14 15:04
| 1 |