日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自定义时间刻度尺,时间选择器,模仿萤石云 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近寫了個功能螢石云歷史回放。其中有個時間刻度選擇器,看如下效果

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支持的屬性設(shè)置(Attributes):

nameformatdescription
keyTickHeightdimension,reference關(guān)鍵刻度高度
tickValueOffsetdimension,reference刻度文字偏移
cursorPositionfloat游標相對view width的位置 0~ 1
baselinePositionfloat刻度尺橫線相對view height的位置 0~1
tickColorcolor,reference刻度線顏色
showTickLineboolean是否顯示刻度橫線
showCursorLineboolean是否顯示游標線
showTickValueboolean是否顯示刻度值
tickDirectionUpboolean刻度線開口方向
cursorLineColorcolor,reference游標線顏色
maxScaleValueSizecolor,reference刻度值最大規(guī)格(字體大小)

TimeRulerBar支持的額外屬性(Attributes):

nameformatdescription
tickValueColorcolor,reference刻度值顏色
colorScaleBackgroundcolor,reference顏色區(qū)域背景色
cursorBackgroundColorcolor,reference游標背景色
drawCursorContentboolean是否繪制游標內(nèi)容
tickValueSizedimension,reference刻度值文字大小
videoAreaOffsetdimension,reference繪制顏色區(qū)域相對于頂部的偏移量
videoAreaHeightdimension,reference繪制顏色區(qū)域的高度
tickValueColorcolor,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//設(shè)置刻度尺時間范圍timeBar.setRange(startTime, endTime)//設(shè)置初始化縮放模式timeBar.setMode(TimeRulerBar.MODE_UINT_30_MIN)//設(shè)置當前刻度值timeBar.setCursorValue(System.currentTimeMillis())

滑動事件監(jiān)聽

timeBar.setOnCursorListener(object : BaseScaleBar.OnCursorListener {override fun onStartTrackingTouch(cursorValue: Long) {//開滑動}override fun onProgressChanged(cursorValue: Long,fromeUser:Boolean) {//刻度發(fā)生變化 fromeUser是否觸摸事件觸發(fā)}override fun onStopTrackingTouch(cursorValue: Long) {//結(jié)束滑動}})

更多方法參照Demo

總結(jié)

以上是生活随笔為你收集整理的自定义时间刻度尺,时间选择器,模仿萤石云的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。