亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Android中自定義動畫根據控件Y軸旋轉動畫

發布時間:2021-06-09 17:11:22 來源:億速云 閱讀:165 作者:Leah 欄目:移動開發

這篇文章給大家介紹如何在Android中自定義動畫根據控件Y軸旋轉動畫,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

//自定義一個類繼承Animation(android.view.animation.Animation)抽象類

public class MyAnimation extends Animation {

  // 先定義成員變量 //X軸的中心坐標 int center_X;

  //Y軸的中心坐標 int center_Y;

  // 初始化Camera Camera camera = new Camera();

}

接下來要注意了 

重寫initialize()方法

/** * 在initialize對變量進行初始化

* @param width

* @param height

* @param parentWidth

* @param parentHeight

*/

@Override

public void initialize(int width, int height, int parentWidth, int parentHeight) {

  super.initialize(width, height, parentWidth, parentHeight);

  //獲取X Y 中心點坐標 center_X = width/ 2; center_Y = height / 2;

  //動畫的執行時間,3000毫秒

  setDuration(3000L);

  setInterpolator(new AccelerateInterpolator());

}

寫完這些以后就到了最關鍵的核心代碼了

/** * 在applyTransformation通過矩陣修改動畫

* 這里是自定義動畫的核心,動畫執行的過程中一直在回調這個方法

* 每次回調這個方法interpolatedTime都會改變

* @param interpolatedTime

* @param t

*/

@Override

protected void applyTransformation(float interpolatedTime, Transformation t) {

  final Matrix matrix = t.getMatrix();

  //儲蓄 camera.save();

  //中心是繞Y軸旋轉,這里可以自行設置其他軸

  camera.rotateY(1080 * interpolatedTime);

  //加在變換矩陣上 camera.getMatrix(matrix);

  //設置翻轉中心點 matrix.preTranslate(-center_X, -center_Y);

  matrix.postTranslate(center_X, center_Y); //恢復 camera.restore();

}

關于如何在Android中自定義動畫根據控件Y軸旋轉動畫就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海伦市| 涟源市| 平罗县| 布拖县| 乡宁县| 齐齐哈尔市| 旅游| 中方县| 晋城| 巴青县| 安庆市| 刚察县| 虞城县| 桓仁| 泗水县| 新乐市| 光山县| 乌鲁木齐市| 洪湖市| 晴隆县| 晋宁县| 阿坝| 民丰县| 和田市| 鄯善县| 桃园市| 娱乐| 湾仔区| 县级市| 普陀区| 清水河县| 信阳市| 延寿县| 高雄县| 汕头市| 华安县| 乌拉特中旗| 大洼县| 西昌市| 齐齐哈尔市| 苏尼特右旗|