Android屬性動畫備忘nineold

  項目開發(fā)偶爾會用到動畫,每次都得找以前的代碼復制,太麻煩了,但又記不住,只好寫在這.

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供眉山網(wǎng)站建設、眉山做網(wǎng)站、眉山網(wǎng)站設計、眉山網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、眉山企業(yè)網(wǎng)站模板建站服務,十多年眉山做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。

                ObjectAnimator.ofFloat(view, "translationX", 0, 50, -50, 0).setDuration(duration).start();//位移
                ObjectAnimator.ofFloat(view, "translationY", 0, 50, -50, 0).setDuration(duration).start();
                ObjectAnimator.ofFloat(view, "scaleX", 1, 2, 1).setDuration(duration).start();//縮放
                ObjectAnimator.ofFloat(view, "scaleY", 1, 2, 1).setDuration(duration).start();
                ObjectAnimator.ofFloat(view, "alpha", 1, 0, 1).setDuration(duration).start();//透明度
                ObjectAnimator.ofFloat(view, "rotationX", 0, 180, 0).setDuration(duration).start();//翻轉
                ObjectAnimator.ofFloat(view, "rotationY", 0, 180, 0).setDuration(duration).start();
                ObjectAnimator.ofFloat(view, "rotation", 0, 180, 0).setDuration(duration).start();//旋轉
             ViewHelper.setPivotX(view, view.getWidth() / 2f);//設置動畫基點
             ViewHelper.setPivotY(view, view.getHeight() / 2f);

以上就是比較常用的nineold,但是偶爾遇到組合的,這樣就比較省事

AnimatorSet animator = new AnimatorSet();
		animator.playTogether(
		    ObjectAnimator.ofFloat(p_w_picpath, "rotation", 0, 1080),
		    ObjectAnimator.ofFloat(p_w_picpath, "translationX", 0, 180),
		    ObjectAnimator.ofFloat(p_w_picpath, "translationY", 0, -180),
		    ObjectAnimator.ofFloat(p_w_picpath, "scaleX", 1, 0),
		    ObjectAnimator.ofFloat(p_w_picpath, "scaleY", 1, 0)
		    ObjectAnimator.ofFloat(p_w_picpath, "alpha", 1, 0.25f, 1)
		);
		animator.setDuration(5 * 1000).start();

今天做一個添加商品到購物車時 商品圖片旋轉 縮小 位移 到指定的購物車圖標位置,用的屬性動畫,很麻煩,動畫執(zhí)行順序如果弄亂了,位移軌跡會出問題的.大概記錄一下,以免忘了

		int[] endLocation = new int[2];
		topSpcart.getLocationInWindow(endLocation);// shopCart是那個購物車
		
		// 計算位移
		int endX = endLocation[0] - startLocation[0] ;// 動畫位移的X坐標
		int endY = endLocation[1] - startLocation[1];// 動畫位移的y坐標
		
		RotateAnimation rotateAnimation = new RotateAnimation(0, 1080,    
				Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
		ScaleAnimation scaleAnimation =new ScaleAnimation(1, 0, 1, 0,   
				Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0);   
		TranslateAnimation translateAnimation = new TranslateAnimation(0,endX, 0, endY);
//		translateAnimation.setInterpolator(new LinearInterpolator());//動畫加速器
//		translateAnimation.setInterpolator(new AccelerateInterpolator());
//		translateAnimation.setRepeatCount(0);// 動畫重復執(zhí)行的次數(shù)
//		translateAnimation.setFillAfter(true);//動畫結束留在原位置
		
		AnimationSet set = new AnimationSet(false);
		set.setFillAfter(true);
		set.addAnimation(rotateAnimation);//旋轉
		set.addAnimation(scaleAnimation);//縮放
		set.addAnimation(translateAnimation);//位移
		set.setDuration(1000);// 動畫的執(zhí)行時間
		view.startAnimation(set);
		// 動畫監(jiān)聽事件
		set.setAnimationListener(new AnimationListener() {
			// 動畫的開始
			@Override
			public void onAnimationStart(Animation animation) {
			}
			@Override
			public void onAnimationRepeat(Animation animation) {
			}
			// 動畫的結束
			@Override
			public void onAnimationEnd(Animation animation) {
			}
		});

文章標題:Android屬性動畫備忘nineold
分享網(wǎng)址:http://muchs.cn/article16/jpdidg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設、電子商務、網(wǎng)站內(nèi)鏈網(wǎng)站排名、商城網(wǎng)站、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設