《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識點2-14-1 屬性動畫_第1頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識點2-14-1 屬性動畫_第2頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識點2-14-1 屬性動畫_第3頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識點2-14-1 屬性動畫_第4頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識點2-14-1 屬性動畫_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

屬性動畫屬性動畫概述屬性動畫是組件的通用屬性發(fā)生改變時而產(chǎn)生的屬性漸變效果。支持的屬性包括width、height、backgroundColor、opacity、scale、rotate、translate等。使用屬性動畫時,需要給組件(包括基礎(chǔ)組件和容器組件)添加animation屬性,并設(shè)置好參數(shù)。屬性動畫的參數(shù)animation參數(shù)說明:參數(shù)名參數(shù)類型必填參數(shù)描述durationnumber否設(shè)置動畫時長。單位為毫秒,默認動畫時長為1000毫秒。默認值:1000temponumber否動畫播放速度。數(shù)值越大,動畫播放速度越快,數(shù)值越小,播放速度越慢值為0時,表示不存在動畫。默認值:1curveCurve否設(shè)置動畫曲線。默認曲線為線性。默認值:Curve.Lineardelaynumber否設(shè)置動畫延遲執(zhí)行的時長。單位為毫秒,默認不延時播放。默認值:0iterationsnumber否設(shè)置播放次數(shù)。默認播放一次,設(shè)置為-1時表示無限次播放。默認值:1playModePlayMode否設(shè)置動畫播放模式,默認播放完成后重頭開始播放。默認值:PlayMode.NormalonFinish()=>void否狀態(tài)回調(diào),動畫播放完成時觸發(fā)。屬性動畫的參數(shù)其中變化曲線curve枚舉值為:名稱描述名稱描述Linear表示動畫從頭到尾的速度都是相同的。FastOutLinearIn加速曲線Ease表示動畫以低速開始,然后加快,在結(jié)束前變慢ExtremeDeceleration急緩曲線EaseIn表示動畫以低速開始Sharp銳利曲線EaseOut表示動畫以低速結(jié)束Rhythm節(jié)奏曲線EaseInOut表示動畫以低速開始和結(jié)束Smooth平滑曲線FastOutSlowIn標準曲線Friction阻尼曲線屬性動畫的參數(shù)播放模式playMode枚舉值為:名稱描述Normal動畫按正常播放。Reverse動畫反向播放。Alternate動畫在奇數(shù)次(1、3、5...)正向播放,在偶數(shù)次(2、4、6...)反向播放。AlternateReverse動畫在奇數(shù)次(1、3、5...)反向播放,在偶數(shù)次(2、4、6...)正向播放。屬性動畫使用示例1-寬高變化

@State

widthSize:

number

=

250

@State

heightSize:

number

=

100

@State

flag:

boolean

=

true...省略代碼

Button('change

width

and

height')

.onClick(()

=>

{

if

(this.flag)

{

this.widthSize

=

100

this.heightSize

=

50

}

else

{

this.widthSize

=

250

this.heightSize

=

100

}

this.flag

=

!this.flag

})

.margin(30)

.width(this.widthSize)

.height(this.heightSize)

.animation({

duration:

2000,

curve:

Curve.EaseOut,

iterations:

3,

playMode:

PlayMode.Normal

})屬性動畫使用示例2-旋轉(zhuǎn)@State

rotateAngle:

number

=

0...//省略代碼Button('change

rotate

angle')

.onClick(()

=>

{

this.rotateAngle

=

90

})

.margin(50)

.rotate({

angle:

this.rotateAngle

})

.animation({

duration:

1200,

curve:

Curve.Friction,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論