참고 : http://developer.android.com/reference/android/graphics/drawable/AnimationDrawable.html
안드로이드는 animated GIF를 지원하지 않는다.
여러장의 PNG 이미지를 순차적으로 보여주는 형태로 Animation을 구성하여
animated GIF와 비슷한 효과를 줄 수가 있다.
public class Test extends Activity {
private ImageView mLogoImageView;
private AnimationDrawable logoAnimation;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);
mLogoImageView = (ImageView)findViewById(R.id.LogoImageView);
mLogoImageView.setBackgroundResource(R.anim.logo_ani);
logoAnimation = (AnimationDrawable) mLogoImageView.getBackground();
new Handler().postDelayed(new Runnable() {
public void run() {
logoAnimation.start();
}
}, 100);
}
}
딜레이를 주지 않고 start()를 할 경우 AnimationDrawable이 정상적으로 동작하지 않는다.
Activity에 GUI가 그려지고 이미지를 로드 하는데 시간이 걸리기 때문이다.
res/anim 폴더에 animation에 사용할 XML을 생성한다.
android:oneshot으로 반복 여부를 설정
사용할 PNG 파일은 drawable에 리소스 등록 되어 있어야 하며 android:drawable="PNG리소스ID"
android:duration="시간(ms)"로 한 프레임을 구성한다.
'Android > Etc.' 카테고리의 다른 글
| animated GIF를 대체 AnimationDrawable(FrameAnimation) (0) | 2010/12/17 |
|---|---|
| ProgressDialog를 이용한 Loading 구성 (0) | 2010/12/17 |
| App 종료 (0) | 2010/11/25 |
| SDCARD의 경로 가져오기 (0) | 2010/11/25 |
| 앱에서 다른 앱을 실행 (0) | 2010/11/25 |
| Activity Lifecycle (0) | 2010/07/13 |
