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

网站创建桌面快捷方式成都建网站

网站创建桌面快捷方式,成都建网站,网站建设沟通话术,缓存图片 wordpress关于安卓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/14276360/

相关文章:

  • 大连零基础网站建设教学在哪里合肥网站建设设计外包
  • 低面效果在哪个网站做网站开发工程师的证件
  • 学术网站建设电商网站建设课设
  • 做设计兼职的网站有哪些工作企业网站 的网络营销方法有
  • 全网营销型推广网站建设中国建设银行什么是网站用户名
  • 网站地图的使用雅安做网站的公司
  • 介绍美食的网站模板免费下载网站建设与维护的试卷
  • 淘宝客网站应该怎么做旅游门户网站模板
  • 文山网站开发自由人网站开发
  • phpmysql做网站app001推广平台官网
  • 怎样暂停域名指向网站wordpress入口
  • 服务器怎么做网站教程商务网站建设实训心得
  • 网站推他网站wordpress如何关闭自动更新
  • 公司做网站需要注意些什么问题个人网站空间大小
  • 网站开发需要有什么证书杭州建设主管部门的网站
  • 大连网站建设详细流程盘锦网站网站建设
  • 专业html5网站建设展厅展示设计
  • 做网站课程国际新闻最新消息今天乌克兰与俄罗斯
  • 内江网站建设公司哪公司建设网站
  • 网站建设流程 费用网站系统与程序的链接
  • 莱阳有网站建设推广的吗wordpress 上传目录权限
  • wordpress做大型网站crm客户管理系统 项目
  • wordpress极简优化新十条
  • wordpress自适应网站博客模板最新网站上的html内容怎么修改
  • 网站建设从初级到精通用网站
  • 重庆做手机网站建设wordpress页面展示多个文章
  • 做航模的网站安卓手机优化软件排名
  • 广东省水利工程建设信息网站外包公司辞退有赔偿吗
  • 网站推广文章 优帮云能不能不用虚拟主机建设网站
  • 把自己做的动画传到哪个网站上商丘网红打卡地