Lottie動畫庫最新版使用方法詳解 教程 示例

2021-08-03 03:14:40 字數 3037 閱讀 9606

qq**流:425219113(計算機語言交流)

使用方法:

如上所述,該庫需要配合ae製作json動畫來使用,ae方面的具體方法可以參考這篇部落格:

下面我主要說的是在android studio 上的使用方法(eclipse需要自行提取aar的檔案搭建專案)。

dependencies
android:id

="@+id/animationview"

android:layout_width

="match_parent"

android:layout_height

="match_parent"

="true"

="anim/done.json"

="anim/images"

="0.3"

/>

字段

作用lottie_autoplay

lottie_filename json

檔案路徑(assets)

lottie_imageassetsfolder

資源路徑(如果有資源,則必須要填,否則會崩潰)

lottie_scale

動畫居中縮放

lottie_progress

lottie_repeatcount

迴圈次數 -1無限迴圈 0不迴圈

lottie_repeatmode

迴圈模式

這些屬性也是可以在**裡面設定的

animationview.setimageassetsfolder(「anim/images」);

animationview.setanimation(「anim/chest.json」);

animationview.playanimation();

public

void

setanimation

(final string animationname,

final cachestrategy cachestrategy)

else

if(cachestrategy == cachestrategy.weak)

setcomposition

(composition);}

});}

public

static cancellable fromassetfilename

( context context, string filename, oncompositionloadedlistener listener)

catch

(ioexception e)

return

frominputstream

(stream, listener)

;}

public

static cancellable frominputstream

( inputstream stream, oncompositionloadedlistener listener)

public

static cancellable fromjsonreader

( jsonreader reader, oncompositionloadedlistener listener)

public

final

class

asynccompositionloader

extends

asynctask

implements

cancellable

看,這裡的asynccompositionloader其實就是繼承asynctask的,而 loader.executeonexecutor(asynctask.thread_pool_executor, reader);是有執行緒數量限制的,好像是5個。而同樣的,現在很多廣告sdk都是無腦地使用了asynctask,導致很容易形成大塞車的情景。

解決方法

使用以下**代替setanimation,同時,fromfilesync可以放到自己的執行緒裡面,但setcomposition和playanimation需要放到ui執行緒裡面。當然,如果是小json檔案,直接全部放在ui執行緒裡面也行。

lottiecomposition lottiecomposition = lottiecomposition.factory.

fromfilesync

(context,

"anim/done.json");

if(lottiecomposition!=null)

1、資源是要放在assets中的

我這裡的目錄結構為:

json檔案: assets/anim/done.json

資源: assets/anim/images/image_0.png

2、assets區分大小寫,哪怕是字尾名

3、資源檔名必須要和json檔案裡面的相應資源檔名相同。

我們來看一下json動畫檔案的基本格式。

]

重點,「p」:「image_0.png」。資源的檔名必須要和這裡面的名稱相同。因為ae生成的json動畫會將資源預設命名為img_0.png,img_1.png等等。而美工可能給你的是經過她改名稱的,這時就需要自己改變其中的名稱了。

如果需要對動畫進行定位和縮放,這裡還有一篇文章做了介紹。

最新版SDWebImage的使用

第二步,在需要的地方匯入標頭檔案 import uiimageview webcache.h 第三步,呼叫sd setimagewithurl 方法快取,注意,這就是新版本的新方法,舊方法是setimagewithurl 下面將幾個方法都介紹一下。1.sd setimagewithurl 快取的基本...

最新版SDWebImage的使用

我之前寫過一篇部落格,介紹快取處理的三種方式,其中最難,最麻煩,最佔記憶體資源的還是快取,最近做的專案有大量的處理,還是採用了sdwebimage來處理,但是發現之前封裝好的 報錯了。研究發現,是我用了新版的sdwebimage,好多方法都變了。第二步,在需要的地方匯入標頭檔案 import uii...

方維團購4 3最新版sql分析

很久沒上論壇了,今天看到了發布的方維 4.3最新版sql注入漏洞利用工具 好吧,根據擼主的資訊,加上之前有分析過方維,很快就定位到了 app source goods list.php app source goods list.php 分類 3.sidegoodscatelist getgoods...