Wie Sie scale-down eine Bildansicht mit ObjectAnimator, aber haben Sie behalten Ihre position im layout?

Ich versuche zu skalieren, eine Bildansicht unten in einer animation, aber Wann immer ich tun, damit es angezeigt wird, Herunterschalten und nach Links in das layout. Hier ist ein screenshot, bevor ich animieren:

Wie Sie scale-down eine Bildansicht mit ObjectAnimator, aber haben Sie behalten Ihre position im layout?

Und hier sieht es aus, nachdem die animation:

Wie Sie scale-down eine Bildansicht mit ObjectAnimator, aber haben Sie behalten Ihre position im layout?

Ist es möglich, die Bildansicht verkleinern, aber seine oberen linken Ecke bleiben, in der oberen linken Ecke des Layouts?

Hier ist der code, den ich verwende:

//ScaleTestActivity.java

import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;

public class ScaleTestActivity extends Activity {

    ImageView mImageView;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        mImageView = (ImageView)findViewById(R.id.image_view);
    }

    @Override
    protected void onResume() {
        super.onResume();

        ObjectAnimator scaleDownX = ObjectAnimator.ofFloat(mImageView, "scaleX", 0.5f);
        ObjectAnimator scaleDownY = ObjectAnimator.ofFloat(mImageView, "scaleY", 0.5f);

        scaleDownX.setDuration(1000);
        scaleDownY.setDuration(1000);

        AnimatorSet scaleDown = new AnimatorSet();

        scaleDown.play(scaleDownX).with(scaleDownY);
        scaleDown.start();
    }
}

Layout:

<!-- main.xml -->
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <ImageView
        android:id="@+id/image_view"
        android:src="@drawable/droid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true" />

</RelativeLayout>

Die drawable Ressource:

Wie Sie scale-down eine Bildansicht mit ObjectAnimator, aber haben Sie behalten Ihre position im layout?

InformationsquelleAutor Neil Goodman | 2011-08-11
Schreibe einen Kommentar