Android 에서 Vectors(2)를 사용 하여 아름 다운 경로 애니메이션 그리 기
Vectors 에 대한 분석 은 주로 두 절 로 나 뉜 다.
(1)SVG 이미지 다이어트 애플 리 케 이 션 사용,참고.
(2)아름 다운 경로 애니메이션 을 그립 니 다.참고 하 십시오.
본 고 는 2 절 입 니 다.Vector 애니메이션 에 관 한 것 입 니 다.
SDK Manager 알림 지원 라 이브 러 리 업데이트
Vector 애니메이션 을 사용 하 는 데 는 주로 세 가지 부분 이 있 습 니 다.Vector 이미지,경로 애니메이션,Animated-Vector 이미지 입 니 다.
본문 원본 의Github 다운로드 주소.
애니메이션
1.벡터 이미지
SVG 형식의 그림 은 Vector 이미지 자원 으로 변환 되 며,AS 2.0 변환 도 구 를 사용 할 수 있 으 며,온라인 변환 도구 일 수도 있 습 니 다.참고 하 십시오.그림 은 경로(path)스타일 이 필요 합 니 다.예 를 들 어 그리 기 편 합 니 다.
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="256dp"
android:height="256dp"
android:viewportHeight="70"
android:viewportWidth="70">
<path
android:name="heart1"
android:pathData="..."
android:strokeColor="#E91E63"
android:strokeWidth="1"/>
<path
android:name="heart2"
android:pathData="..."
android:strokeColor="#E91E63"
android:strokeWidth="1"/>
</vector>
2.경로 애니메이션속성 애니메이션 을 사용 하여 그리 기 상 태 를 제어 합 니 다.
<?xml version="1.0" encoding="utf-8"?>
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="6000"
android:propertyName="trimPathEnd"
android:valueFrom="0"
android:valueTo="1"
android:valueType="floatType"/>
ObjectAnimator 의 trimPathEnd 속성 은 path 의 수량 을 결정 하고 나머지 부분 은 그리 지 않 습 니 다.수치 구간 은 0 에서 1 입 니 다.duration 속성 은 지속 시간 을 표시 합 니 다.6000 즉 6 초 입 니 다.3.애니메이션 벡터 이미지
벡터 이미지 의 경로(path)를 경로 애니메이션(objectAnimator)에 적용 하여 그리 기 를 제어 합 니 다.
<animated-vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/v_heard">
<target
android:name="heart1"
android:animation="@animator/heart_animator"/>
<target
android:name="heart2"
android:animation="@animator/heart_animator"/>
...
</animated-vector>
4.애니메이션 보이 기Android 5.0(21)이상 버 전이 있어 야 Vector 애니메이션,즉 AnimatedVectorDrawable 클래스 를 사용 할 수 있 습 니 다.
// 5.0 .
private void animateImage() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//
AnimatedVectorDrawable mAnimatedVectorDrawable = (AnimatedVectorDrawable)
ContextCompat.getDrawable(getApplication(), R.drawable.v_heard_animation);
mIvImageView.setImageDrawable(mAnimatedVectorDrawable);
if (mAnimatedVectorDrawable != null) {
mAnimatedVectorDrawable.start();
}
}
}
AnimatedVectorDrawable 의 start 방법 은 애니메이션 시작 기능 입 니 다.gif 애니메이션 보다 Vector 애니메이션 을 사용 하면 응용 자원 을 절약 하여 사용자 에 게 더 좋 은 체험 을 할 수 있 습 니 다.재 미 있 는 SVG 라 이브 러 리 를 추천 합 니 다.
위 에서 말 한 것 은 소 편 이 소개 한 안 드 로 이 드 에서 Vectors(2)를 사용 하여 아름 다운 경로 애니메이션 을 그 리 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.