美文网首页
模仿的一个简单安卓加载视图

模仿的一个简单安卓加载视图

作者: 春日野家的兔子 | 来源:发表于2017-12-07 13:44 被阅读0次

一、开篇

这个博客主要是学习自定义控件的时候,然后模仿了一个app上转圈圈的自定义视图,感觉很有意思

然后再看了pathmeasure后就有感而发,打算利用pathmeasure实现这个的控件的功能

二、运行结果

image

三、原理和细节吧

这个过程可以看成两个:1、圆弧不断变大,2、圆弧不断变小(好像有点奇怪),增加的时候,就是以后一端为基点,而变小的时候就以前一端为基点。然后再一次循环后,下一次就最后一次小圆弧的一段做为下次的起点。

关于pathmeasure的部分可以去看[GcsSloop的这个博客]

我这就是简单的利用了两个动画,能看出来是这样。然后一次循环就画一次path,然后通过pathmeasure来选值。


path.addArc(rectF,pathstart,359.9f);

这里主要就一个重要点,为什么这里要359.9,GcsSloop的博客上也这样,我一开始没在意,然后写的360,然后发现每次循环的起点都是0度,一开始以为是measure还是和一开始的path关联而没用和新的path关联,然后发现不是这样。

然后我试了试其他的180,270发现都正常运行,这样的话,在我看来,如果写出360的话,那就是可能自动默认成0度开始,而不是我们设置的起点,哎,动手才发现有很多问题。所以后来改成359.9,path的起点就可以正常了,而且基本上可以是个整圆,更何况我这里的一个循环没有跑出一个整圆。

其他的逻辑就没有很复杂的地方了,主要是自己加深对pathmeasure的理解吧。

下面附上源码地址:github传送门

相关文章

  • 模仿的一个简单安卓加载视图

    一、开篇 这个博客主要是学习自定义控件的时候,然后模仿了一个app上转圈圈的自定义视图,感觉很有意思 然后再看了p...

  • Android ANR,看完不慌

    隔壁部门做了一个评价器,就是一个jsp页面在安卓设备上一直运行,安卓原生部分的很简单,就是通过webview加载,...

  • iOS 下拉框

    项目需要做一个下拉框,根据选择内容的不同,加载不同的视图,在安卓开发工具里有现成的工具 spinner,直接拿来用...

  • 安卓类加载机制

    热修复、插件化很多技术都是基于安卓类加载机制实现,所以对安卓类加载机制了解很有必要

  • 微信webview开发的那些坑

    安卓和ios不同的视频播放特性 安卓刷新无效,缓存 图片预加载

  • 2018-09-04

    关于安卓加载不同形式values文件夹优先级的探究 一.导入 我们大家都知道,安卓在加载values文件的时候。会...

  • Android温故而知新 - ClassLoader

    安卓插件化越来越流行,其中用到的技术不外乎加载外部的资源和加载外部的代码,关于加载外部资源我之前写过一篇文章《安卓...

  • 安卓开发 开发前你需要了解的一些资料(一)

    前言   在安卓开发 初步了解安卓和配置安卓环境中,我们简单的介绍了安卓和配置安卓环境。我们使用了Android ...

  • 高版本安卓无法成功请求http访问错误的问题

    在初次使用picasso加载阿里云OSS图片资源时发现加载错误的情况。发现在安卓高版本中(安卓9)上存在无法访问h...

  • 知识总结之 插件化基础 java反射与代理

    Java平台的反射机制是代码动态加载和调用的基本途径,在安卓系统源码中也用到了大量的反射动态加载类。反射也是安卓平...

网友评论

      本文标题:模仿的一个简单安卓加载视图

      本文链接:https://www.haomeiwen.com/subject/zcpdixtx.html