Android自定义View开源库——FunnyTimeLine(时间选择器)

FunnyTimeLine是我第二个开源的自定义View(第一个FunnyUnlockView见这里,本质上是一个时间轴样式的时间选择器。

成品

因图片过大,请点击该页面查看

(因GIF压缩问题,此处展示的图片并不清晰且卡顿,建议您下载demo自行体验)

特点

该View具有以下特点:

  • 三级惯性滑动:对 低中高 三种速度提供了三种惯性滑动,使用起来更加流畅自然
  • 动态生成图像:基于数据实时生成当前绘制图像(而不是全部绘制后区域加载)
  • 双缓冲绘图:基于内存画布+真实画布绘制,降低真实绘制次数,减少频闪

使用

引入包

  1. build.gradle添加implementa
maven { url "https://jitpack.io" }
  1. 引入依赖
implementation 'com.github.FunnySaltyFish:FunnyTimeLine:1.0.0'

使用FunnyTimeLine

支持Java代码和xml两种方式

代码属性解释
getTimeData()返回与View关联的TimeData(解释见下)
setTimeData(TimeData)设置与View关联的TimeData
getLightColor()lightColor获取浅颜色(见图)
setLightColor(Color color)lightColor设置浅颜色
getNormalColor()normalColor获取普通颜色(见图)
setNormalColor(Color color)normalColor设置普通颜色
getStressColor()stressColor获取强调颜色(见图)
setStressColor(Color color)stressColor设置强调颜色
getShowNums()showNums获取当前横轴一共显示多少个数字。(奇数)
setShowNums(int)showNums设置显示数字
getTimeKind()timeKind获取当前更改的时间单位(0:秒,1:分,2:小时)
setTimeKind(short)timeKind设置时间单位
setFPS(int)设置View更新的理论帧率(实际帧率会小于该值)
setTimeMS(int)time设置时间轴当前的时间 (以毫秒为单位)

解释

TimeData
  • TimeData是FunnyTimeLine中管理时间的类,每个View持有一个TimeData,View读取它的数据显示
  • 内部有int h, int min, int s, int ms四个变量分别表示小时、分钟、秒、毫秒
  • 提供了一些用于操作时间的方法
颜色图示在这里插入图片描述

地址

github:FunnyTimeLine
gitee:FunnyTimeLine

  • app/ 为示例项目
  • library/ 为源代码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值