简单缩放动画期间的中心视图

时间:2014-10-10 16:03:15

标签: java android android-fragments android-animation fragmenttransaction

我正在尝试为活动/ framgent过渡做一个缩放/缩小动画

这是两个动画:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="500"
    android:interpolator="@android:anim/accelerate_decelerate_interpolator" >

    <scale
        android:fromXScale="80%"
        android:fromYScale="80%"
        android:toXScale="80%"
        android:toYScale="80%" />

    <alpha
        android:fromAlpha="1.0"
        android:toAlpha="0.5" />

</set>

-

<?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android"
        android:duration="500"
        android:interpolator="@android:anim/accelerate_decelerate_interpolator" >

        <translate
            android:fromXDelta="100%"
            android:fromYDelta="0"
            android:toXDelta="0"
            android:toYDelta="0" />

</set>

使用它:

overridePendingTransition(R.anim.slide_in_right, R.anim.slide_to_behind);

问题是活动不会在屏幕中央缩小,它会粘在屏幕的顶部/左侧

知道我错过了什么吗?或者做错了?

1 个答案:

答案 0 :(得分:3)

为缩放动画添加一个轴。在xml上添加:

    android:pivotX="50%"
    android:pivotY="50%"

您的比例应如下:

  <scale
    android:fromXScale="100%"
    android:fromYScale="100%"
    android:pivotX="50%"
    android:pivotY="50%"
    android:toXScale="80%"
    android:toYScale="80%" />