Android Interstitial animation effects
Last Update:2015-06-04
Source: Internet
Author: User
<span id="Label3"></p><p><p><span style="font-size:18px">Company research and Development sdk, need to be similar to the interstitial the animation effect, research, wrote a demo, comments very detailed.</span></p></p><p><p><span style="font-size:18px"><br></span></p></p><pre name="code" class="java"><span style= "font-size:24px;" >package Com.example.animationactivity;import Android.animation.animator;import android.animation.AnimatorSet; Import Android.animation.ObjectAnimatoimport Android.annotation.suppresslint;import android.content.Context; Import Android.os.bundle;import Android.support.v7.app.actionbaractivity;import Android.view.view;import Android.view.view.onclicklistener;import Android.view.windowmanager;import android.view.animation.AlphaAnimation ; Import Android.view.animation.animation;import Android.view.animation.animationset;import Android.view.animation.animationutils;import Android.view.animation.scaleanimation;import Android.view.animation.translateanimation;import Android.widget.button;import Android.widget.ImageView;import android.widget.RelativeLayout, @SuppressLint ("newapi") public class Mainactivity extends Actionbaractivity {private Button button;imageview image;private int a = 1; @Overrideprotected void onCreate (Bundle Savedinstancestate) { Super.oncreate (savedinstancestate); setcontentview (r.layout.activity_main); button = (button) Findviewbyid (r.id.button); image = new ImageView (getapplicationcontext ()); image.setimagedrawable (getresources (). getdrawable (r.drawable.bg1)); Relativelayout.layoutparams params = new Relativelayout.layoutparams ((int) (getwidth (getapplicationcontext ()) * 0.8), (int) (getheight (getapplicationcontext ()) * 0.8)); Params.addrule (relativelayout.center_in_parent); Relativelayout relativelayout = (relativelayout) Findviewbyid (r.id.parent); image.setlayoutparams (params); Relativelayout.addview (image); /**//animation 1final Animation Animation = new Translateanimation ( -600f, 0f, 0f, 0f); final Animation scaleanimation = new Scalea Nimation (0.2f, 1f, 0.2f, 1f), final Animationset animationset = new Animationset (true); animationset.addanimation ( scaleanimation); animationset.addanimation (animation); animationset.setduration (1000); Animation translationanimation = new Translateanimation (0f, 1800f, 0f,0f); Animation ScaleAnimation2 = new SCaleanimation (1f, 0.4f, 1f, 0.4f); final Animationset animationSet2 = new Animationset (true); animationset2.addanimation (translationanimation); animationset2.addanimation (scaleAnimation2); animationset2.setduration (1000); Animationset2.setfillafter (true); **/button.setonclicklistener (new onclicklistener () {@SuppressLint ("newapi") @Overridepublic void OnClick (View v) {// TODO auto-generated Method Stub//writes itself/** * if (a = = 1) {a = 2; image.startanimation (animationset);} * Else {a = 1; ima Ge.startanimation (animationSet2); **///the animated If (a = = 1) {enteranimation (image, getapplicationcontext ()) from the meter, and a = 2;} else {backanimation (image, getappli Cationcontext ()); A = 1;}});} Gets the width of the screen public static int getwidth (context Context) {windowmanager windowmanager = (windowmanager) Context.getsystemservice (context.window_service); int width = windowmanager.getdefaultdisplay (). getWidth (); return width;} Gets the height of the screen public int getheight (context Context) {windowmanager windowmanager = (windowmanager) contExt.getsystemservice (context.window_service); int height = windowmanager.getdefaultdisplay (). getheight (); return height;} Go out animation public static void Backanimation (ImageView paramview, context Context) {int f = (getwidth (CONTEXT)-PARAMVIEW.GETW Idth ())/2;paramview.setpivotx (paramview.getwidth ()/2);p aramview.setpivoty (paramview.getheight ()/2); O Bjectanimator LocalObjectAnimator1 = objectanimator.offloat (paramview, "scaleX", new float[] {1.0F, 0.8F}). setduration (1L); objectanimator LocalObjectAnimator2 = objectanimator.offloat (paramview, "scaleY", new float[] {1.0F, 0.8F}). Setduration (1L); objectanimator LocalObjectAnimator3 = objectanimator.offloat (paramview, "alpha", new float[] {1.0F, 0.7F}). setduration (1L); objectanimator localObjectAnimator4 = objectanimator.offloat (paramview, "X", new float[] {f, GetWidth (context)}). setduration (800L); objectanimator localObjectAnimator5 = objectanimator.offloat (paramview, " ScaleX ", New float[] {0.8F, 1.0F}). setduration (400L); localObjectAnimator5.Setstartdelay (400L); objectanimator localObjectAnimator6 = objectanimator.offloat (paramview, "scaleY", new float[] { 0.8F, 1.0F}). setduration (400L); localobjectanimator6.setstartdelay (400L); objectanimator localObjectAnimator7 = Objectanimator.offloat (paramview, "alpha", New float[] {0.7F, 1.0F}). setduration (400L); Localobjectanimator7.setstartdelay (400L); Animatorset localanimatorset = new Animatorset () localanimatorset.playtogether (new animator[] {localObjectAnimator1, localObjectAnimator2, localobjectanimator3,localobjectanimator4, localobjectanimator5,localobjectanimator6, localObjectAnimator7}); Localanimatorset.start ();} Enter the animation public static void Enteranimation (ImageView paramview, context Context) {//the width of the screen minus the width of the animation, which is the distance the picture is moving int f = (getwidt H (context)-paramview.getwidth ())/2;paramview.setpivotx (paramview.getwidth ()/2);p aramview.setpivoty ( Paramview.getheight ()/2); objectanimator localObjectAnimator1 = objectanimator.offloat (paramview, "scaleX", new float [] {1.0F, 0.8F}). Setduration (1L); objectanimator localObjectAnimator2 = objectanimator.offloat (paramview, "scaleY", new float[] {1.0F, 0.8F}). Setduration (1L); objectanimator LocalObjectAnimator3 = objectanimator.offloat (paramview, "alpha", new float[] {1.0F, 0.7F}). setduration (1L); objectanimator localObjectAnimator4 = objectanimator.offloat (paramview, "X", new float[] {- Paramview.getwidth (), f}). setduration (800L); objectanimator localObjectAnimator5 = objectanimator.offloat (paramview , "scaleX", new float[] {0.8F, 1.0F}). setduration (400L); localobjectanimator5.setstartdelay (400L); objectanimator LocalObjectAnimator6 = objectanimator.offloat (paramview, "scaleY", new float[] {0.8F, 1.0F}). setduration (400L); Localobjectanimator6.setstartdelay (400L); objectanimator localObjectAnimator7 = objectanimator.offloat (paramview, " Alpha ", new float[] {0.7F, 1.0F}). setduration (400L); localobjectanimator7.setstartdelay (400L); Animatorset localanimatorset = new Animatorset () localanimatorset.playtogether (new animator[] {localObjectanimator1,localobjectanimator2, localobjectanimator3,localobjectanimator4, localObjectAnimator5, localObjectAnimator6, localObjectAnimator7}); Localanimatorset.start ();}} </span><span style= "font-size:18px;" ></span></pre><br><p><p>Android Interstitial animation effects</p></p></span>