문자열. 필수사항임. 애니메이션할 객체 속성으로, 이름별로 참조됩니다. 예를 들어 View 객체에 "alpha" 또는 "backgroundColor"를 지정할 수 있습니다. 그러나 objectAnimator 요소는 target 속성을 노출하지 않으므로 XML 선언에서 애니메이션할 객체를 설정할 수 없습니다. loadAnimator()를 호출하여 애니메이션 XML 리소스를 확장한 다음 setTarget()을 호출하여 이 속성이 포함된 타겟 객체를 설정해야 합니다.
android:valueTo
부동소수점, 정수 또는 색상. 필수사항임. 애니메이션된 속성이 끝나는 값입니다. 색은 6자리 16진수 숫자로 표현됩니다(예: #333333).
android:valueFrom
부동소수점, 정수 또는 색상. 애니메이션된 속성이 시작되는 값입니다. 지정되지 않으면 애니메이션은 속성의 get 메서드로 얻은 값에서 시작합니다. 색은 6자리 16진수 숫자로 표현됩니다(예: #333333).
정수. 애니메이션의 반복 횟수입니다. "-1"로 설정하여 무한 반복하거나 양의 정수로 설정합니다. 예를 들어 값 "1"은 애니메이션이 처음 실행되고 나서 한 번 더 반복된다는 의미이므로 애니메이션은 총 두 번 재생됩니다. 기본값은 "0"으로 반복이 없음을 의미합니다.
android:repeatMode
정수. 애니메이션이 애니메이션의 끝 부분에 도달했을 때의 동작입니다. 이 속성을 적용하려면 android:repeatCount를 양의 정수 또는 "-1"로 설정해야 합니다. 반복 시 애니메이션을 역방향으로 재생하려면 "reverse"로 설정하고, 매번 처음부터 애니메이션을 반복하려면 "repeat"로 설정합니다.
android:valueType
키워드. 값이 색상인 경우 이 속성을 지정하지 마십시오. 애니메이션 프레임워크는 색상 값을 자동으로 처리합니다.
정수. 애니메이션의 반복 횟수입니다. "-1"로 설정하여 무한 반복하거나 양의 정수로 설정합니다. 예를 들어 값 "1"은 애니메이션이 처음 실행되고 나서 한 번 더 반복된다는 의미이므로 애니메이션은 총 두 번 재생됩니다. 기본값은 "0"으로 반복이 없음을 의미합니다.
android:repeatMode
정수. 애니메이션이 애니메이션의 끝 부분에 도달했을 때의 동작입니다. 이 속성을 적용하려면 android:repeatCount를 양의 정수 또는 "-1"로 설정해야 합니다. 반복 시 애니메이션을 역방향으로 재생하려면 "reverse"로 설정하고, 매번 처음부터 애니메이션을 반복하려면 "repeat"로 설정합니다.
android:valueType
키워드. 값이 색상인 경우 이 속성을 지정하지 마십시오. 애니메이션 프레임워크는 색 값을 자동으로 처리합니다.
이 애니메이션을 실행하려면 코드의 XML 리소스를 AnimatorSet 객체로 확장한 다음 애니메이션 집합을 시작하기 전에 모든 애니메이션의 타겟 객체를 설정해야 합니다. setTarget()을 호출하면 편의상 AnimatorSet의 모든 하위 요소의 단일 타겟 객체가 설정됩니다. 다음 코드는 이 작업의 진행 방법을 보여줍니다.
파일에는 단일 루트 요소로 <alpha>, <scale>, <translate>, <rotate> 또는 다른 애니메이션 요소(중첩된 <set> 요소도 포함)의 그룹을 갖는 <set> 요소가 있어야 합니다.
요소:
<set>
다른 애니메이션 요소(<alpha>, <scale>, <translate>, <rotate>) 또는 기타 <set> 요소를 갖고 있는 컨테이너. AnimationSet를 나타냅니다.
속성:
android:interpolator
보간기 리소스. 애니메이션에서 적용할 Interpolator입니다. 값은 보간기 클래스 이름이 아닌 보간기를 지정하는 리소스 참조여야 합니다. 플랫폼에서 제공되는 기본 보간기 리소스를 사용하거나 고유한 자체 보간기 리소스를 만들 수 있습니다. 보간기에 관한 자세한 내용은 아래 설명을 참조하세요.
<alpha>에서 지원하는 추가 속성은 Animation 클래스 참조(이 클래스 참조의 모든 XML 속성은 이 요소에 의해 상속됨)를 참조하세요.
<scale>
크기 조절 애니메이션. pivotX 및 pivotY를 지정하여 이미지가 바깥쪽(또는 안쪽)으로 커지기 시작하는 이미지의 중심점을 지정할 수 있습니다. 예를 들어 값이 0, 0(왼쪽 상단)이면 일제히 오른쪽 아래로 커집니다. ScaleAnimation을 나타냅니다.
속성:
android:fromXScale
부동소수점. 시작 X 크기 오프셋으로, 여기서 1.0은 변경이 없다는 뜻입니다.
android:toXScale
부동소수점. 끝 X 크기 오프셋으로, 여기서 1.0은 변경이 없다는 뜻입니다.
android:fromYScale
부동소수점. 시작 Y 크기 오프셋으로, 여기서 1.0은 변경이 없다는 뜻입니다.
android:toYScale
부동소수점. 끝 Y 크기 오프셋으로, 여기서 1.0은 변경이 없다는 뜻입니다.
android:pivotX
부동소수점. 객체가 확장될 때 고정된 상태로 유지되는 X 좌표입니다.
android:pivotY
부동소수점. 객체의 크기가 확장될 때 고정된 상태로 유지되는 Y 좌표입니다.
<scale>에서 지원하는 추가 속성은 Animation 클래스 참조(이 클래스 참조의 모든 XML 속성은 이 요소에 의해 상속됨)를 참조하세요.
<translate>
수직 및/또는 수평 모션. 세 가지 형식의 속성을 지원합니다. '%'로 끝나는 -100~100의 값(자신을 기준으로 한 백분율을 나타냄)과 '%p'로 끝나는 -100~100의 값(상위 요소를 기준으로 한 백분율), 접미사 없는 부동소수점 값(절댓값을 나타냄)을 각각 지원합니다. TranslateAnimation을 나타냅니다.
속성:
android:fromXDelta
부동소수점 또는 백분율. 시작 X 오프셋입니다. 법선 위치를 기준으로 한 픽셀(예: "5")로 표현되거나 요소 너비를 기준으로 한 백분율(예: "5%") 또는 상위 요소 너비를 기준으로 한 백분율(예: "5%p")로 표현됩니다.
android:toXDelta
부동소수점 또는 백분율. 끝 X 오프셋입니다. 법선 위치를 기준으로 한 픽셀(예: "5")로 표현되거나 요소 너비를 기준으로 한 백분율(예: "5%") 또는 상위 요소 너비를 기준으로 한 백분율(예: "5%p")로 표현됩니다.
android:fromYDelta
부동소수점 또는 백분율. 시작 Y 오프셋입니다. 법선 위치를 기준으로 한 픽셀(예: "5")로 표현되거나 요소 높이를 기준으로 한 백분율(예: "5%") 또는 상위 요소 높이를 기준으로 한 백분율(예: "5%p")로 표현됩니다.
android:toYDelta
부동소수점 또는 백분율. 끝 Y 오프셋입니다. 법선 위치를 기준으로 한 픽셀(예: "5")로 표현되거나 요소 높이를 기준으로 한 백분율(예: "5%") 또는 상위 요소 높이를 기준으로 한 백분율(예: "5%p")로 표현됩니다.
<translate>에서 지원하는 추가 속성은 Animation 클래스 참조(이 클래스 참조의 모든 XML 속성은 이 요소에 의해 상속됨)를 참조하세요.
보간기는 XML로 정의된 애니메이션 수정자로, 애니메이션의 변경 속도에 영향을 줍니다. 보간기를 사용하면 기존 애니메이션 효과를 가속하거나 감속 또는 반복하고 앞뒤로 왔다갔다 하게 하는 등 다양하게 만들 수 있습니다.
보간기는 android:interpolator 속성이 있는 애니메이션 요소에 적용되고, 그 값은 보간기 리소스 참조입니다.
Android에서 사용할 수 있는 모든 보간기는 Interpolator 클래스의 서브클래스입니다. Android에는 보간기 클래스마다 참조할 수 있는 공개 리소스가 들어 있기 때문에 android:interpolator 속성을 사용하여 보간기를 애니메이션에 적용할 수 있습니다. 다음 표에는 각 보간기에 사용할 리소스가 명시되어 있습니다.
플랫폼에서 제공되는 보간기(위 표에 나열된 보간기)가 만족스럽지 않다면 속성을 수정하여 맞춤 보간기 리소스를 만들 수 있습니다. 예를 들어 AnticipateInterpolator의 가속 속도를 조정하거나 CycleInterpolator의 주기 수를 조정할 수 있습니다. 이를 진행하려면 XML 파일에서 고유한 보간기 리소스를 만들어야 합니다.