ImageView가 있고 그것에 간단한 크기 조정 애니메이션을 수행합니다. 매우 표준적인 코드.
내 scale_up.xml :
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="1"
android:fromYScale="1"
android:toXScale="1.2"
android:toYScale="1.2"
android:duration="175"/>
</set>
내 애니메이션 코드 :
Animation a = AnimationUtils.loadAnimation(this, R.anim.scale_up);
((ImageView) findViewById(R.id.circle_image)).startAnimation(a);
문제 :
이미지의 크기가 조절되면 중앙에서 크기가 아닌 왼쪽 상단에서 크기가 조절됩니다. 즉, 이미지의 크기가 조정 된 버전은 중앙과 같은 지점이 아니지만 왼쪽 상단 지점은 동일합니다. 여기에 제가 의미하는 바를 설명하는 링크가 있습니다. 첫 번째 이미지는 애니메이션 크기 조정 방법이고 두 번째 이미지는 원하는 크기 조정 방법입니다. 중심점을 동일하게 유지해야합니다. 나는 이미지, 컨테이너, 왼쪽 또는 오른쪽 정렬에 중력을 설정하려고 시도했지만 항상 동일하게 조정됩니다. 기본 화면에 RelativeLayout을 사용하고 있으며 ImageView는 다른 RelativeLayout에 있지만 다른 레이아웃을 시도했지만 변경 사항은 없습니다.
pivotX
그리고pivotY
절반으로 설정해야viewportWidth
하고viewportHeight
정확하게 할 수 있습니다.