当前位置: 首页 > news >正文

网站创建桌面快捷方式深圳平面设计公司排名前十强

网站创建桌面快捷方式,深圳平面设计公司排名前十强,中小企业组网,桂林人论坛新闻关于安卓SVGA浅尝#xff08;一#xff09;使用 相关链接 SVGA官网 SVGA-github说明文档 背景 项目开发#xff0c;都会和动画打交道#xff0c;动画的方案选取#xff0c;就有很多选择。如Json动画#xff0c;svga动画#xff0c;gif等等。各有各的优势。目前项目中…关于安卓SVGA浅尝一使用 相关链接 SVGA官网 SVGA-github说明文档 背景 项目开发都会和动画打交道动画的方案选取就有很多选择。如Json动画svga动画gif等等。各有各的优势。目前项目中用到了svga的动画因此就有了这一系列的文章。 使用 1引入 首先引入的方式大致有两种 一种是直接使用远程依赖示例代码如下 工程 build.gradle 中添加仓库allprojects {repositories {...maven { url https://jitpack.io }} } 然后在应用 build.gradle 中添加依赖。 compile com.github.yyued:SVGAPlayer-Android:latest第二种就是把项目中的library拉下来进行项目中的module依赖。 由于目前该svga库官方已经声明不再进行维护了建议直接拉下来作为model引入到项目中。 2混淆 使用以下的代码进行混淆 -keep class com.squareup.wire.** { *; } -keep class com.opensource.svgaplayer.proto.** { *; }3初始化 使用前需要对SVGAParser进行初始化才能进行使用。 注意如果是对一些资源涉及到预加载等情况的确是需要对SVGAParser进行初始化。 但是如果仅仅是使用SVGAImageView进行数据显示XML中指定资源路径则无需初始化因为通过阅读源代码发现在使用SVGAImageView的过程中其方法parserSource()会进行SVGAParser的初始化。 一xml布局中直接声明svga控件需要播放的动画 ?xml version1.0 encodingutf-8? RelativeLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoandroid:orientationverticalandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentcom.opensource.svgaplayer.SVGAImageViewandroid:layout_heightmatch_parentandroid:layout_widthmatch_parentapp:sourceposche.svgaapp:autoPlaytrueandroid:background#000 //RelativeLayout启动页面即可进行预览效果图如下 更多的xml使用标签请参阅官方文档。 这里就是使用xml进行svga实现的一个方法。但是这种方法一般局限性都比较大所以这里介绍另外一种方法“使用代码进行实现“。 二使用代码实现 初始化 SVGAImageView imageView new SVGAImageView(this); parser SVGAParser.shareParser() SVGAParser.shareParser().init(this);加载资源 创建一个 SVGAParser 实例加载 assets 中的动画。parser new SVGAParser(this); // 第三个为可缺省参数默认为 null如果设置该方法则内部不在处理音频的解析以及播放会通过 PlayCallback 把音频 File 实例回传给开发者有开发者自行控制音频的播放与停止。 parser.decodeFromAssets(posche.svga, object : SVGAParser.ParseCompletion {// ... }, object : SVGAParser.PlayCallback {// The default is null, can not be set })创建一个 SVGAParser 实例加载远端服务器中的动画。parser new SVGAParser(this); // 第三个为可缺省参数默认为 null如果设置该方法则内部不在处理音频的解析以及播放会通过 PlayCallback 把音频 File 实例回传给开发者有开发者自行控制音频的播放与停止。 parser.decodeFromURL(new URL(https://github.com/yyued/SVGA-Samples/blob/master/posche.svga?rawtrue), new SVGAParser.ParseCompletion() {// ... }, object : SVGAParser.PlayCallback {// The default is null, can not be set })创建一个 SVGADrawable 实例并赋值给 SVGAImageView然后播放动画。parser new SVGAParser(this); parser.decodeFromURL(..., new SVGAParser.ParseCompletion() {Overridepublic void onComplete(NotNull SVGAVideoEntity videoItem) {SVGADrawable drawable new SVGADrawable(videoItem);imageView.setImageDrawable(drawable);imageView.startAnimation();}Overridepublic void onError() {} }); 上述就是加载显示svga的方式。可以看出加载的资源可以是本地也可以是服务端。而对于服务端的资源缓存逻辑则需要自行定义最后通过一个加载回调复制数据到控件中则可以进行动画显示。 缓存逻辑示例代码如下 val cacheDir File(context.applicationContext.cacheDir, http) HttpResponseCache.install(cacheDir, 1024 * 1024 * 128)而最后的SVGASoundManager就是一个svga的音频播放管理类相关的api这里就不在意义叙述可以参看官方文档进行查看。 关于svga的初步使用就介绍到这里后续将会深入介绍svga实现方式加载原理等逻辑 that’s all---------------------------------------------------------------------
http://www.hkea.cn/news/14562070/

相关文章:

  • 网站ftp查询dw软件的使用方法
  • 网站开发项目实训报告网站订票策划方案
  • 网站制作难度素材下载免费
  • 怎么做自己的公司网站做杂志的模板下载网站
  • 赣州网站开发软件开发过程包括哪些阶段
  • 网站建设结构图下载深圳宝安区做网站的公司
  • 建个人网站怎么赚钱吗网架加工制造厂家
  • 北京赵公口网站建设无法登陆建设银行网站
  • 班级网站怎么做pptwordpress英文自动采集
  • 即墨专业医院网站制作公司武夷山市住房和城乡建设局网站
  • 国外红人营销网站wordpress 幻灯片主题
  • 企业商务网站建设策划书电商网站设计案例
  • 湖南云网站建设阿里云oss可以做网站
  • 网站毕业设计论文模板哪个网站的ppt模板最好
  • 贺州招聘网站建设网站中竖导航栏怎么做
  • 建设服装网站目的和作用如何做汽车的创意视频网站
  • 上海软件网站建设个人网站设计结构图
  • 建设部网站施工合同范本去哪找南昌百度快速排名提升
  • 舞蹈网站模板一级域名二级域名哪个好
  • 阿里国际站网站建设如何做网站的导航栏
  • 做海报的网站什么编辑器x wordpress theme
  • 教你做企业网站购物网站发展规划与建设进度
  • 网站虚拟主机虚拟空间本科自考是什么意思
  • 软件开发大学重庆seo薪酬水平
  • 中国做外贸最好的网站有哪些网站制作完成后
  • 网站制作毕业设计论文短链接还原
  • 网站开发一定得用html吗wordpress提取公众号文章
  • 网站开发中用什么安全性比性比较高支付网站建设费会计分录
  • 模板网站报价明细WordPress无法自动推送
  • 长春专业网站制作手机端wordpress模板下载