안드로이드 애니메이션의 프레임 애니메이션(Frame Animations)
자원 파일을 프로젝트res/drawable 디렉터리에 저장
Android에서 프레임 애니메이션은 AnimationDrawable 클래스의 지원을 받아야 합니다. 다음은 AnimationDrawable의 일반적인 방법에 대해 간단하게 설명합니다.
void start(): 프레임별 애니메이션을 시작합니다.
void stop(): 프레임별 애니메이션 재생을 중지합니다.
void addFrame(Drawable frame, int duration):AnimationDrawable에 프레임을 추가하고 기간을 설정합니다.
int getDuration (int i): 지정한 index 프레임의 지속 시간을 받습니다.
Drawable getFrame (int index): 지정된 index의 프레임 Drawable을 가져옵니다.
int getNumberOfframes(): 현재 AnimationDrawable의 모든 프레임 수를 가져옵니다.
boolean isOneShot (): 현재 AnimationDrawable에서 한 번 실행할지 여부입니다.true에서 한 번 실행하고false에서 반복해서 재생합니다.
boolean isRunning(): 현재 AnimationDrawable이 재생 중인지 여부입니다.
void setOneShot(boolean oneShot): AnimationDrawable 실행 여부를 설정하고true 실행 한 번,false 순환 재생
1. 프레임 애니메이션 만들기
xml
<?xml version="1.0" encoding="utf-8"?>
<!--
animation-list, oneshot , false
, item
android:duration
-->
<animation-list
xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="true"
>
<item android:drawable="@drawable/icon1" android:duration="150"></item>
<item android:drawable="@drawable/icon2" android:duration="150"></item>
<item android:drawable="@drawable/icon3" android:duration="150"></item>
<item android:drawable="@drawable/icon4" android:duration="150"></item>
<item android:drawable="@drawable/icon5" android:duration="150"></item>
<item android:drawable="@drawable/icon6" android:duration="150"></item>
</animation-list>
Java
private AnimationDrawable frameAnim;
frameAnim =new AnimationDrawable();
// AnimationDrawable
frameAnim.addFrame(getResources().getDrawable(R.drawable.img0), 50);
frameAnim.addFrame(getResources().getDrawable(R.drawable.img1), 50);
frameAnim.addFrame(getResources().getDrawable(R.drawable.img2), 50);
frameAnim.addFrame(getResources().getDrawable(R.drawable.img3), 50);
frameAnim.addFrame(getResources().getDrawable(R.drawable.img4), 50);
frameAnim.addFrame(getResources().getDrawable(R.drawable.img5), 50);<strong>
</strong>
1. 프레임 애니메이션 사용
애니메이션을 표시하려면 setBackground Resource나 setBackground Drawable 방법으로 뷰의 배경으로 설정하고 start 방법을 사용해서 애니메이션을 실행할 수 있습니다
weather_icon_drawable.setBackgroundResource(R.drawable.weather_anim);
AnimationDrawable anim = (AnimationDrawable)weather_icon_drawable.getBackground();
anim.start();
애니메이션을 동시에 멈추면stop 방법을 사용할 수 있습니다if (anim != null && anim.isRunning()) {
anim.stop();
}
사실 애니메이션을view의 이미지 Resource로 설정할 수 있습니다. 이 때 애니메이션은 우리가 제어할 필요가 없고 자동으로 실행됩니다.
weather_icon_drawable.setImageResource(R.drawable.weather_anim);
또는android:src="@drawable/weather_anim"
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.