PAG(动画播放)

大约 2 分钟

PAG(动画播放)

类Lottie播放动画的组件

组件用法open in new window

属性

支持所有基础属性,此外还支持:

src

设置PAGView的源文件路径,支持URL或本地文件路径

参数描述类型
src源文件路径String

repeatCount

设置动画重复次数,默认值为 1,表示动画仅播放一次。0 表示动画将无限次播放

参数描述类型
repeatCount动画重复次数Int

autoPlay

设置是否自动播放,默认值为 true

参数描述类型
play是否自动播放Boolean

replaceLayerContents

替换当前 PAG 资源中的图像图层信息,需要传入PAGReplaceItem类型参数

PAGReplaceItem

成员描述类型
type替换类型 0 文本 1 图片Int
layerNamelayerName & layerIndex 图层选择方式,根据名称或者顺序,二选一String
layerIndexlayerName & layerIndex 图层选择方式,根据名称或者顺序,二选一Int
text文本替换时指定String
imageFilePath图片替换文件路径String
imageFileAsset图片替换Asset资源路径String
imageViewRef图片替换同页面下其他 View 的 nativeRefString
imageFilePathMemoryCacheModule.get(key) 可获得 bitmap 的 keyString

注:图片替换时imageFilePathimageFileAssetimageFileAssetimageFilePath指定其一

@Page("demo_page")
internal class TestPage : BasePager() {
    override fun body(): ViewBuilder {
        return {
            attr {
                allCenter()
            }
            PAG {
                attr {
                    size(pagerData.pageViewWidth, 200f)
                    src(ImageUri.pageAssets("user_avatar.pag"))
                    repeatCount(0)
                }
            }
            PAG {
                attr {
                    size(pagerData.pageViewWidth, 200f)
                    src(ImageUri.pageAssets("user_avatar.pag"))
                    repeatCount(0)
                    replaceLayerContents(
                        PAGReplaceItem(
                            PAGReplaceItem.TYPE_TEXT,
                            layerName = "text_user_note",
                            text = "Kuikly!"
                        ),
                        PAGReplaceItem(
                            PAGReplaceItem.TYPE_IMAGE,
                            layerName = "img_user_avatar",
                            imageFileAsset = ImageUri.pageAssets("user_portrait.png").toUrl(getPager().pageName)
                        ),
                    )
                }
            }
        }
    }
}



















 
 
 
 
 
 
 
 
 
 
 
 





事件

支持所有基础事件,此外还支持:

loadFailure

设置加载失败时的事件回调

animationStart

设置动画开始时的事件回调

animationEnd

设置动画结束时的事件回调

animationCancel

设置动画取消时的事件回调

animationRepeat

设置动画重复时的事件回调

方法

play

设置动画重复时的事件回调播放动画(autoPlay属性为true时不需要手动调用该接口)

stop

停止动画

上次编辑于: