安卓自定义漏斗-FunnelView

作者: 我是黄教主啊 | 来源:发表于2019-02-25 16:24 被阅读6次

简介

最近项目需要绘制一批图表控件,于是使用了MPChatAndroid框架,但是里面没有漏斗图,网上也没有合适的漏斗图。于是,只能自己造轮子咯。已开源至github:FunnelView,感兴趣的可以fork,star

效果

直接放图:

效果 图片
默认效果 view1.png
自定义描述文字 view2.png
自定义宽度伸缩策略 view3.png

使用

Step1

在你的root build.gradle中添加:

    allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }

在你的app build.gradle中添加:

    dependencies {
            implementation 'com.github.Jay-huangjie:FunnelView:v1.1'
    }

最新版本去github

Step2

如果你只需要默认样式,只需两步即可使用:

  1. 数据源继承IFunnelData接口
  2. 调用setChartData方法将数据源设置进去即可
    注意:绘制的顺序是从下往上,所以如果你希望你的数据源是从上往下排列,需要调用Collections.reverse(List<?> list);方法将集合结果反转

关于高级用法见README

原理

大概的一个思路是,先确定好漏斗的最下方的中心点centerX,然后往两边绘制,利用path逐级往上绘制。通过每次增加一个halfWidth的宽度来达到漏斗的效果,而这个宽度完全可以自定义,所以在适配上有无限的可能,从而达到适配目的。

相关文章

  • 安卓自定义漏斗-FunnelView

    简介 最近项目需要绘制一批图表控件,于是使用了MPChatAndroid框架,但是里面没有漏斗图,网上也没有合适的...

  • 学习自定义View的一些文章

    安卓自定义View基础:坐标系 安卓自定义View基础:角度弧度 安卓自定义View基础:颜色 Android自定...

  • 安卓自定义View教程-1

    基础篇 安卓自定义View基础 - 坐标系 安卓自定义View基础 - 角度弧度 安卓自定义View基础 - 颜色...

  • [转]自定义View的学习

    原文连接 如何关闭硬件加速 自定义View 基础篇 安卓自定义View基础 - 坐标系 安卓自定义View基础 -...

  • 自定义View教程目录

    参考安卓自定义View教程目录

  • Dialog

    安卓dialog的使用+如何自定义dialog自定义Dialog自定义Dialog 自定义

  • 安卓画笔setShadowLayer与SetMaskFilter

    安卓自定义 View 踩坑笔记,特作文记录 安卓 Paint 类用于自定义 View 时↑这两个方法能用来干嘛我就...

  • Android Touch System(一)

    前言 之前写了一篇文章是关于自定义控件的。在学习自定义view的时候顺便把安卓的touch system(安卓触摸...

  • 安卓6.0自定义更换字体完美体验

    自定义的方法 root自己的安卓手机,安卓Root Explorer 找到自己喜欢的字体,复制到手机存储中 我们所...

  • 关于安卓自定义地址选择控件的实现

    标题:关于安卓自定义地址选择控件的实现 对于安卓地址选择,我们常常会使用三方控件,今天博主就写一款自定义的地址选择...

网友评论

    本文标题:安卓自定义漏斗-FunnelView

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