To understand android.view.animation.RotateAnimation and scaling transformation.
Create the sample application that Rotate a green rectangle shape and after that double the size of that object and then shrink back to our starting size.
XML Code :
<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/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="194dp"
/>
</RelativeLayout>
spin.xml :
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android
= "http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<rotate
android:fromDegrees="0"
android:toDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:duration="5000" />
<scale
android:pivotX="50%"
android:pivotY="50%"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="2.0"
android:toYScale="2.0"
android:duration="2500" />
<scale
android:startOffset="2500"
android:duration="2500"
android:pivotX="50%"
android:pivotY="50%"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="0.5"
android:toYScale="0.5" />
</set>
Ø JAVA Code :
package com.example.pra7;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RectShape;
import android.view.Menu;
import android.view.MenuItem;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.RotateAnimation;
import android.widget.ImageView;
import android.support.v4.app.NavUtils;
public class Pra7 extends Activity {
ImageView iv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pra7);
iv = (ImageView)findViewById(R.id.imageView1);
ShapeDrawable rect = new ShapeDrawable(new RectShape());
rect.setIntrinsicHeight(100);
rect.setIntrinsicWidth(200);
rect.getPaint().setColor(Color.GREEN);
iv.setImageDrawable(rect);
Animation an = AnimationUtils.loadAnimation(this,R.anim.spin);
iv.startAnimation(an);
}
}
- OUTPUT :
s
No comments:
Post a Comment