반응형
ShakeJ
MNWorld
ShakeJ
전체 방문자
오늘
어제
  • 카테고리 N
    • Contact
    • 🤔그냥이야기
    • 📷사진이야기
    • 제주도에서 한달을 살아보았다
    • 옛글 N
      • 👇Blog
      • 공지사항
      • 이슈 N
      • 생각들
      • 👇취미
      • 건프라
      • 👇Review
      • 노래리뷰
      • 영화리뷰
      • 👇Travel Story
      • 2011 도쿄여행기
      • 2013 Google IO
      • 2013 Jeju
      • 2014 HONGKONG
      • 2014 Jeju
      • 2014 Sanfransis..
      • 2015 Lombok
      • 2016 HONGKONG
      • 2017 Saigon
      • 국내여행기
      • Photo Story
      • Growth
      • 👇Server
      • Ruby on the Rai..
      • Frontend
      • FullStack (MEAN..
      • Ubuntu
      • 👇Android
      • 안드로이드 프로그래밍
      • 번역본
      • 내어플이야기
      • 코드창고
      • 👇iOS
      • 아이폰 프로그래밍
      • 맥북 이야기
      • 👇Microsoft
      • ASP.NET
      • Silverlight
      • 윈도우 이야기
      • 👇IT Story
      • 모바일 이야기
      • 하드웨어 이야기 N
      • 네트워크 이야기
      • 프로그래밍이야기
      • Database이야기
      • 클라우드이야기
      • 프론트 이야기
      • 마케팅이야기
      • 그래픽 작업
      • 블로그 팁

블로그 메뉴

  • GuestBook

공지사항

인기 글

태그

  • 블로그 잡담
  • 배너제작
  • 블로그 꾸미기
  • 티스토리 초대장
  • D40 사진
  • 블로그 초보
  • 윈도우폰7
  • shakej
  • 블로그 운영하면서
  • asp.net
  • 블로그 이야기
  • 서울 출사지
  • 랩
  • 안드로이드 어플 추천
  • MNWorld
  • 티스토리
  • 티스토리 팁
  • 블로그 운영하기
  • 블로그 팁
  • 배너교환
  • 무료배너제작
  • 블로그 관련
  • 블로그 시작하기
  • 블로그 만들기
  • iOS 프로그래밍
  • 초대장
  • 블로그 처음
  • 배너무료제작
  • 블로그 운영
  • 풍경사진

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
ShakeJ

MNWorld

카테고리 없음

안드로이드 프레임 애니메이션 배경화면 움직이기

2011. 11. 30. 15:09
반응형
안드로이드 애니메이션에 gif 를 이미지뷰에서 지원하긴 하지만, 실제로 구동은 되지 않습니다. API Demo의 animation GIF를 사용해 일일이 배열로 나눠서 저장하고 다시 그것을 onDraw로 계속 불러오는 방법이 있지만, 실제 구글엥서 추천하지 않습니다.

따라서 사용되는 방법이  프레임 애니메이션입니다.


아래 소스는 프레임 애니메이션은 아니고 배열을 불러와서 루프돌리는 방식의 소스입니다~

package kr.nd.ani;

import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.widget.ImageView;

public class AniTest extends Activity
{
 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
   

    public void onWindowFocusChanged (boolean hasFocus)
    {
     ImageView img = (ImageView)findViewById(R.id.imgv);
        AnimationDrawable ani;
       
        ani = getAnimation();//애니메이션을 불러옵니다.
        img.setBackgroundDrawable(ani);
        ani.start();//정상적으로 애니메이션이 구현되는예제..
    }
   
    public AnimationDrawable getAnimation()
    {
     AnimationDrawable ani = new AnimationDrawable();
     BitmapDrawable[] frame = new BitmapDrawable[10];
  
   frame[0] = (BitmapDrawable)getResources().getDrawable(R.drawable.d1);
   frame[1] = (BitmapDrawable)getResources().getDrawable(R.drawable.d2);
   frame[2] = (BitmapDrawable)getResources().getDrawable(R.drawable.d3);
   frame[3] = (BitmapDrawable)getResources().getDrawable(R.drawable.d4);
   frame[4] = (BitmapDrawable)getResources().getDrawable(R.drawable.d5);
   frame[5] = (BitmapDrawable)getResources().getDrawable(R.drawable.d6);
   frame[6] = (BitmapDrawable)getResources().getDrawable(R.drawable.d7);
   frame[7] = (BitmapDrawable)getResources().getDrawable(R.drawable.d8);
   frame[8] = (BitmapDrawable)getResources().getDrawable(R.drawable.d9);
   frame[9] = (BitmapDrawable)getResources().getDrawable(R.drawable.d10);
  
   for(int x = 0; x < 10; x++)
   {
    ani.addFrame(frame[x],100);
   }
  
   ani.setOneShot(false);
   return ani;
    }

 

}


//소스 출처 : http://blog.naver.com/PostView.nhn?blogId=read552&logNo=50103459617&viewDate=&currentPage=1&listtype=0 


많은 분들 이용하시길 바래요 ~ !
반응형
저작자표시 비영리 변경금지
    ShakeJ
    ShakeJ

    티스토리툴바