2018-11-21

屬性動(dòng)畫的使用

  • 屬性動(dòng)畫主要有兩個(gè)類ValueAnimator和ObjectAnimator

  1. ValueAnimator類下有三個(gè)方法,分別是:
    ValueAnimator.ofInt()、ValueAnimator.oFloat()、ValueAnimator.ofObject()
    • ValueAnimator.ofInt()的使用:
    '''// 步驟1:設(shè)置屬性數(shù)值的初始值和結(jié)束值''' 
    ValueAnimator valueAnimator = ValueAnimator.ofInt(button.getLayoutParams().width, 500);
    '''//步驟2:設(shè)置動(dòng)畫的各種屬性:設(shè)置動(dòng)畫運(yùn)行時(shí)長:2s'''
    valueAnimator.setDuration(2000);
    '''//步驟3:設(shè)置更新監(jiān)聽器:即數(shù)值每次變化更新都會(huì)調(diào)用該方法'''
    valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            int currentValue = (Integer) animation.getAnimatedValue();
            // 獲得每次變化后的屬性值
            Log.e("qwe", currentValue + "--------");
            // 輸出每次變化后的屬性值進(jìn)行查看
            button.getLayoutParams().width = currentValue;
            // 每次值變化時(shí),將值手動(dòng)賦值給對象的屬性
            // 即將每次變化后的值 賦 給按鈕的寬度,這樣就實(shí)現(xiàn)了按鈕寬度屬性的動(dòng)態(tài)
           '''// 步驟4:刷新視圖,即重新繪制,從而實(shí)現(xiàn)動(dòng)畫效果'''
            button.requestLayout();
        }
    });
    '''//步驟5:開始動(dòng)畫'''
    valueAnimator.start();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 【Android 動(dòng)畫】 動(dòng)畫分類補(bǔ)間動(dòng)畫(Tween動(dòng)畫)幀動(dòng)畫(Frame 動(dòng)畫)屬性動(dòng)畫(Property ...
    Rtia閱讀 6,390評論 1 38
  • 1 背景 不能只分析源碼呀,分析的同時(shí)也要整理歸納基礎(chǔ)知識,剛好有人微博私信讓全面說說Android的動(dòng)畫,所以今...
    未聞椛洺閱讀 2,851評論 0 10
  • 本筆記的原文本鏈接 Property Animation Overview 屬性動(dòng)畫總覽 The property...
    Jaesoon閱讀 1,231評論 2 3
  • 動(dòng)畫基礎(chǔ)概念 動(dòng)畫分類 Android 中動(dòng)畫分為兩種,一種是 Tween 動(dòng)畫、還有一種是 Frame 動(dòng)畫。 ...
    Rtia閱讀 1,360評論 0 6
  • Animation Animation類是所有動(dòng)畫(scale、alpha、translate、rotate)的基...
    四月一號閱讀 2,030評論 0 10

友情鏈接更多精彩內(nèi)容