2010-02-11 4 views

답변

5

당신은 AnimationDrawable를 사용하여 프레임 별 애니메이션 할 수를 표시하는 animated.So을해야한다 목적.

+0

샘플 코드 – deepthi

+3

http://developer.android.com/reference/android/graphics/drawable/AnimationDrawable.html – Nuthatch

0

가장 좋은 장소는 2D 그래픽에 대한 공식 가이드입니다. Tween 애니메이션과 프레임 단위로 이야기하는 아래쪽으로 스크롤하십시오. 그 후, Google은 애니메이션 자습서를 둘러 봅니다. 거기에 많은 아주 좋은 것들이 있습니다.

http://developer.android.com/guide/topics/graphics/2d-graphics.html

0
당신은 세 가지 방법으로이 작업을 수행 할 수 있습니다

:

  • 보기 애니메이션
  • 프레임 프레임 애니메이션에 의해
  • 레이아웃 애니메이션

행운의 가장

+3

"u"를 피하고 포스트 미리보기를 사용하여 게시물이 있는지 확인하십시오. 네가 원하는 것처럼 보인다. – WarrenFaith

1

나는 쉽게 당신을 도울 수 있습니다. 당신이 (광고를 구글) 다음 이미지를 320x50 크기 해상도를 가지고로 이미지를 표시 할 ads.if

먼저 보여하고자하는 이미지을.

다음 폴더 res 을 만듭니다.

ANIM에 anim1.xml

<set xmlns:android="http://schemas.android.com/apk/res/android" 
android:shareInterpolator="false"> 
<translate android:fromXDelta="-300%" android:toXDelta="0%" 
    android:fromYDelta="0%" android:toYDelta="0%" android:duration="1000" /> 

후 다른 파일을 작성 anim2.xml 같은 동영상 파일을 생성

<set xmlns:android="http://schemas.android.com/apk/res/android" 
android:shareInterpolator="false"> 
<translate android:fromXDelta="300%" android:toXDelta="0%" 
    android:fromYDelta="0%" android:toYDelta="0%" android:duration="1000" /> 

0,123,516

이 파일을 이미지로 사용하여 애니메이션을 재생합니다. 같은

mAnimation = AnimationUtils.loadAnimation(getApplicationContext(), 
      R.anim.anim1); 
mAnimation1 = AnimationUtils.loadAnimation(getApplicationContext(), 
      R.anim.anim2); 

여기에 내가 타이머을 사용하는 일부 일반 interval.for에 교대로 변경이 개 이미지를 사용합니다.

새 Timer(). 일정 조정 완료 (새 UpdateTimeTask(), 1, 10 * 1000);

고정 일정으로 TimerTast 클래스를 호출합니다. 여기 나는 10 초마다이 클래스를 (10 * 1000) 씩 호출합니다. 그것을위한 먼저 새로운 클래스를 UpdateTimerTast

class UpdateTimeTask extends TimerTask { 

    public void run() { 
     // Toast.makeText(mActivity, "Timer", Toast.LENGTH_LONG).show(); 

     Message toMain = handler.obtainMessage(); 
     toMain.obj = "banner"; 
     handler.sendMessage(toMain); 

    } 
} 

변하는이 클래스 호출 핸들러를 생성하고 일정 간격으로 화상을 애니메이션.

private Handler handler = new Handler() { 
    @Override 
    public void handleMessage(Message msg) { 
     super.handleMessage(msg); 

if (msg.obj.toString().contentEquals("banner")) { 

      if (mBanner.isShown()) { 
       mBanner.setVisibility(View.GONE); 
       mBanner1.setVisibility(View.VISIBLE); 
       mBanner1.startAnimation(mAnimation1); 

      } else if (mBanner1.isShown()) { 
       mBanner.setVisibility(View.VISIBLE); 
       mBanner.startAnimation(mAnimation); 
       mBanner1.setVisibility(View.GONE); 
      } 

     } 

처리기

여기 mBanner1 및 mBanner는 이미지 뷰이다.

그게 전부입니다. 끝난. :)

+0

AnimationDrawable을 다시 발명하지 마십시오. – Nuthatch

관련 문제