这应该是最简单的事情。我正在尝试使用ViewPropertyAnimator来围绕其中心缩放ImageView。
我有以下布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageView"
android:background="@android:color/black"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"/>
<ImageView
android:id="@+id/target"
android:layout_centerInParent="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/crosshair"
/>
然后我有以下代码:
// Now we show the burst view
if(mLastBurst != null)
{
((FrameLayout)(mLastBurst.getParent())).removeView(mLastBurst);
mLastBurst.animate().cancel();
mLastBurst.setVisibility(View.GONE);
}
mLastBurst = getLayoutInflater().inflate(R.layout.target, null);
mLastBurst.setX(event.getX()-mLastBurst.getWidth()/2);
mLastBurst.setY(event.getY()-mLastBurst.getHeight()/2);
mLastBurst.setPivotX(50);
mLastBurst.setPivotY(50);
mLastBurst.animate().scaleXBy(10).scaleYBy(10).setDuration(500);
addContentView(mLastBurst,new ViewGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
当我运行代码时,所有发生的事情是,不是在图像中心周围缩放图像,而是图像漂移到左边。
我玩过pivotX和pivotY值无济于事。这应该很简单,我想我错过了一些明显的东西。
答案 0 :(得分:0)
尝试不设置pivotX和/或pivotY,默认情况下它们居中。如果你设置它们我相信单位是像素。