最近写了个功能萤石云历史回放。其中有个时间刻度选择器,看如下效果

TimeRuler

可以缩放平移的时间刻度尺,方便自定义UI需求。仿萤石云历史录像时间轴

效果:

Add it to your build.gradle with:

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

and:

dependencies {implementation 'com.github.Liberations:TimeRuler:{latest version}'
}

BaseScaleBar支持的属性设置(Attributes):

name format description
keyTickHeight dimension,reference 关键刻度高度
tickValueOffset dimension,reference 刻度文字偏移
cursorPosition float 游标相对view width的位置 0~ 1
baselinePosition float 刻度尺横线相对view height的位置 0~1
tickColor color,reference 刻度线颜色
showTickLine boolean 是否显示刻度横线
showCursorLine boolean 是否显示游标线
showTickValue boolean 是否显示刻度值
tickDirectionUp boolean 刻度线开口方向
cursorLineColor color,reference 游标线颜色
maxScaleValueSize color,reference 刻度值最大规格(字体大小)

TimeRulerBar支持的额外属性(Attributes):

name format description
tickValueColor color,reference 刻度值颜色
colorScaleBackground color,reference 颜色区域背景色
cursorBackgroundColor color,reference 游标背景色
drawCursorContent boolean 是否绘制游标内容
tickValueSize dimension,reference 刻度值文字大小
videoAreaOffset dimension,reference 绘制颜色区域相对于顶部的偏移量
videoAreaHeight dimension,reference 绘制颜色区域的高度
tickValueColor color,reference 刻度值颜色

基本使用

      val calendar = Calendar.getInstance()// 00:00:00 000calendar[Calendar.HOUR_OF_DAY] = 0calendar[Calendar.MINUTE] = 0calendar[Calendar.SECOND] = 0calendar[Calendar.MILLISECOND] = 0var startTime = calendar.timeInMillis// 23:59:59 999calendar[Calendar.HOUR_OF_DAY] = 23calendar[Calendar.MINUTE] = 59calendar[Calendar.SECOND] = 59calendar[Calendar.MILLISECOND] = 999var endTime = calendar.timeInMillis//设置刻度尺时间范围timeBar.setRange(startTime, endTime)//设置初始化缩放模式timeBar.setMode(TimeRulerBar.MODE_UINT_30_MIN)//设置当前刻度值timeBar.setCursorValue(System.currentTimeMillis())

滑动事件监听

       timeBar.setOnCursorListener(object : BaseScaleBar.OnCursorListener {override fun onStartTrackingTouch(cursorValue: Long) {//开滑动}override fun onProgressChanged(cursorValue: Long,fromeUser:Boolean) {//刻度发生变化 fromeUser是否触摸事件触发}override fun onStopTrackingTouch(cursorValue: Long) {//结束滑动}})

更多方法参照Demo

自定义时间刻度尺,时间选择器,模仿萤石云相关推荐

  1. 海康摄像头与萤石云web集成记录

    公司的项目要集成海康的摄像头.我相信大多数集成摄像头的情况也就是在自己的项目页面中嵌入摄像头的监控画面或者基本功能,如果太复杂的业务场景海康也给出了不少的平台方案.现在就说集成最基本,更复杂的业务逻辑 ...

  2. 可以缩放平移的时间刻度尺,方便自定义UI需求。仿萤石云历史录像时间轴

    https://github.com/Liberations/TimeRuler TimeRuler [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ijjdgeFo-1 ...

  3. js仿萤石云的视频回放插件拖动效果-时间标尺timeRuler

    效果如下: 可以调整参数如下: CSDN下载地址: 上传到csdn 不见了 等出现了再贴地址.. js仿萤石云的视频回放插件拖动效果-时间标尺timeRuler-Javascript文档类资源-CSD ...

  4. android自定义view,时间刻度尺,时间轴,视频轴

    TimeRuler 最新版见github地址(欢迎star):https://github.com/huangdali/TimeRuler 时间轴.时间刻度尺 继承至TextureView,效率更高 ...

  5. .NET 自定义Json序列化时间格式

    .NET 自定义Json序列化时间格式 Intro 和 JAVA 项目组对接,他们的接口返回的数据是一个json字符串,里面的时间有的是Unix时间戳,有的是string类型,有的还是空,默认序列化规 ...

  6. Tableau参数:自定义周起始时间

    平时我们可能会经常看周数据,Tableau默认周日为一周的第一天,但是有时我们根据业务需求,可能以周五为一周的第一天,可以通过Tableau日期属性和参数实现对周起始的自定义设置. 1. Tablea ...

  7. NTP网络时间服务器应用“智能交通‘边缘云脑’系统

    NTP网络时间服务器应用"智能交通'边缘云脑'系统 京准电子科技NTP网络时间服务器为"智能交通'边缘云脑'解决方案"提供服务, 基于智能交通边缘服务器构建分布式边缘云脑 ...

  8. DevExpress GridView 列自定义汇总CustomSummaryCalculate——时间点汇总计算

    涛神联合Dxper.Net开发者论坛管理在腾讯课堂开启DevExpress基础和高级培训课程 详情可以加群QQ群:294560883 DevExpress 的GridView或BanedGridVie ...

  9. 微信小程序:微信也可以发闪照了闪照制作生成微信小程序源码下载,自定义闪照时间

    这是一款闪照制作的一款微信小程序源码 该源码呢也就是让用户在微信也可以实现QQ上面的闪照功能 用户可以自主上传照片,可以自定义的选择闪照的时间 另外这款小程序还支持流量主模式 这种东西目前在微信还是挺 ...

最新文章

  1. Android4.0 修改系统屏幕分辨率方法
  2. Qt 【widget如何铺满窗口】
  3. 输出螺旋数字正方形java_Java实现顺时针输出螺旋二维数组的方法示例
  4. Sharepoin学习笔记—架构系列--08 Sharepoint的数据模型(DataModel)、数据管理(Data Management)与查询(Query System)
  5. 《Windows Phone 7 用户界面设计和交互指南 v2.0》
  6. JavaScript基础知识。
  7. 跨域请求的常用方式及解释
  8. 王通讲生物信息学学习方法
  9. 计算机二级vf相关 书籍,计算机等级考试二级VF笔试教材.doc
  10. 和高手相处,能让你觉得自己也变得…
  11. 英雄联盟胜利因素分析
  12. Set集合:求交集、并集和差集
  13. 3月16日----3月20日一年级课程表
  14. 【机器学习】泛化误差上界
  15. nacos配置中心提示com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException UNAVAILABLE io exceptio
  16. 企业微信被别人登录了怎么办?有风险吗?
  17. java 嵌入groovy_嵌入Groovy
  18. Failed to start LSB: Enable AMQP service provided by RabbitMQ broker.
  19. python数组添加数据_Python Xarray将DataArray添加到数据
  20. Termios 函数说明

热门文章

  1. python pip如何正确upgrade
  2. 【分类】DWI将每个个体处理到链接矩阵之后做组分析的几个方法
  3. 什么是TSO(tidb配置tso)
  4. 1017 A除以B(C语言)
  5. vbs画动态爱心代码_用C语言实现心形表白程序[酷炫动态版]
  6. “用户体验”热浪扑面来袭,空调冰西瓜小板凳准备好了吗?
  7. 关于mac升级Catalina后无法打开有道问题
  8. 旁站及C段收集与利用方式
  9. Locount dataset 记录
  10. 流程管理绩效考核之业务评分与评分统计分析方法