Android 응용 프로그램 개발 - 애니메이션 드 로 어 블 ImageView 디 스 플레이 애니메이션

2172 단어
Animation Drawable 은 일련의 그림 을 슬라이드 처럼 화면 에 하나씩 표시 할 수 있 습 니 다.Drawable Animation 의 기본 클래스 는 Animation Drawable 입 니 다.
주의해 야 할 점 은 Animation Drawable 의 효 과 는 애니메이션 처럼 보이 지만 실제 코드 처리 에 서 는 Drawable 로 봐 야 하 며, 사실상 Drawable 에 계승 되 어 있 으 며, XML 프로필 도 res / drawable 디 렉 터 리 에 놓 여 있다 는 점 이다.
Animation Drawable 은 XML 설정 에서 < animation - list > 를 루트 요소 로 사용 한 다음 < item > 요 소 를 사용 하여 각 프레임 에 drawable 자원 과 이 drawable 자원 의 표시 지속 시간 을 정의 합 니 다.다음은 예시 입 니 다.
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"  
    android:oneshot="true">  
    <item android:drawable="@drawable/rocket_thrust1" android:duration="200" />  
    <item android:drawable="@drawable/rocket_thrust2" android:duration="200" />  
    <item android:drawable="@drawable/rocket_thrust3" android:duration="200" />  
</animation-list>  

위의 XML 설정 에는 세 프레임 의 내용 만 포함 되 어 있 으 며, 각 프레임 은 200 ms 지연 된다.안 드 로 이 드: oneshot 속성 이 true 로 설정 되면 이 Animation Drawable 은 한 번 만 실행 되 고 마지막 프레임 에 정 해 집 니 다. 안 드 로 이 드: oneshot 속성 이 false 로 설정 되면 이 세 프레임 을 무한 순환 적 으로 표시 합 니 다.
아래 코드 는 위의 XML 설정 의 Animation Drawable 을 ImageView 에 어떻게 적용 하 는 지 보 여 줍 니 다.
AnimationDrawable rocketAnimation;  
  
public void onCreate(Bundle savedInstanceState) {  
  super.onCreate(savedInstanceState);  
  setContentView(R.layout.main);  
  
  ImageView rocketImage = (ImageView) findViewById(R.id.rocket_image);  
  rocketImage.setBackgroundResource(R.drawable.rocket_thrust);  
  rocketAnimation = (AnimationDrawable) rocketImage.getBackground();  
}  
  
public boolean onTouchEvent(MotionEvent event) {  
  if (event.getAction() == MotionEvent.ACTION_DOWN) {  
    rocketAnimation.start();  
    return true;  
  }  
  return super.onTouchEvent(event);  
}  

Notice: Animation Drawable 의 start () 방법 은 Activity. onCreate () 에서 호출 할 수 없습니다. 그 때 는 Animation Drawable 이 window 에 완전히 붙 어 있 지 않 았 기 때 문 입 니 다.Animation Drawable 에서 그림 을 자동 으로 재생 하려 면 Activity. onWindow FocusChanged () 방법 에서 start () 방법 을 호출 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기