프레임 - b - frame 애니메이션 인 스 턴 스

3366 단어
Frame - b - frame Animation 은 XML Resource 정의 (res / anim 폴 더 에 저장 하거나 res / drawable 폴 더 에 저장 할 수 있 습 니 다 (Android 문서 가 이렇게 말 합 니 다). Animation Drawable 의 API 정 의 를 사용 할 수도 있 습 니 다.Tween Animation 은 Frame - b - frame Animation 과 크게 다 르 기 때문에 XML 이 정의 하 는 형식 도 완전히 다르다. 그 형식 은 먼저 animation - list 루트 노드 이 고 animation - list 루트 노드 에는 여러 개의 item 서브 노드 가 포함 되 어 있 으 며 각 item 노드 는 한 프레임 의 동 화 를 정의 한다. 현재 프레임 의 drawable 자원 과 현재 프레임 이 지속 되 는 시간 이다.다음은 노드 의 요소 에 대해 설명 한다.
XML 속성
설명 하 다.
drawable
현재 프레임 참조 drawable 자원
duration
현재 프레임 표시 시간 (밀리초 단위)
oneshot
true 라면 애니메이션 이 마지막 프레임 에서 한 번 만 재생 되 는 것 을 표시 하고 false 로 설정 하면 애니메이션 순환 재생 을 표시 합 니 다.
variablePadding
If true, allows the drawable’s padding to change based on the current state that is selected.
visible
drawable 의 초기 가시 성 을 규정 합 니 다. 기본 값 은 flase 입 니 다.
 
애니메이션 파일 animation. xml 은:

주 파일 FrameAnimation. java 는:
package com.android.animation; import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.view.MotionEvent; import android.widget.ImageView; public class FrameAnimation extends Activity { AnimationDrawable frameAnimation = new AnimationDrawable(); /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ImageView imageView = (ImageView) findViewById(R.id.imageview); imageView.setBackgroundResource(R.anim.animation); frameAnimation = (AnimationDrawable)imageView.getBackground(); } @Override public boolean onTouchEvent(MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_DOWN) { frameAnimation.start(); } return super.onTouchEvent(event); } }
 
몇 가지 설명:
  • animation. xml 에서 표지 버 전 번호 와 인 코딩 유형 은 없어 서 는 안 된다.
  • animation. xml 에서 xmlns: android = "http://schemas.android.com/apk/res/android'역시 없어 서 는 안 될 것 이다. 부족 하면' Error parsing XML: unbound prefix '의 잘못 을 제시 할 것 이다.올 바른 namespace 를 지정 합 니 다.
  • Tween animation 의 애니메이션 파일 에 비해 < animation - list > < / animation - list > 탭 밖 에 < set > < / set > 탭 이 없어 서 프로그램 이 실행 되 지 않 습 니 다. : a container that can recursively hold itself or other animations. You can include as many child elements of the same or different types as you like. 자원 에 대한 자세 한 태그 소개 참고file:///work/android-sdk-linux_x86-1.6_r1/docs/guide/topics/resources/available-resources.html 。애니메이션 태그 에 대한 상세 한 설명 이 있 습 니 다.
  • Frame - b - frame Animation 애니메이션 을 시작 하 는 코드 FrameAnimation. start ();OnCreate () 에 서 는 안 됩 니 다. OnCreate () 에서 Animation Drawable 이 ImageView 와 완전히 연결 되 지 않 았 기 때문에 OnCreate () 에서 애니메이션 을 시작 하면 첫 번 째 그림 만 볼 수 있 습 니 다.

  •  

    좋은 웹페이지 즐겨찾기