# TimeRulersLib **Repository Path**: kavin_tian/TimeRulersLib ## Basic Information - **Project Name**: TimeRulersLib - **Description**: 可滑动选择时间的刻度尺lib工程 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2021-03-03 - **Last Updated**: 2023-07-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TimeRulers 一个可以缩放的时间轴 类似萤石云的录像进度条 ![](./timebar_scale.gif) Usage ----- 依赖 ``` allprojects { repositories { ... maven { url 'https://jitpack.io' } } } dependencies { implementation 'com.gitee.kavin_tian:time-rulers:1.0.0' } ``` 1.在xml布局中引入: ``` ``` - 目前支持的自定义属性: * `middleCursorColor` 时间尺中间刻度条颜色 - `recordTextColor` 时间刻度文字颜色 - `recordBackgroundColor` 含有录像背景颜色 - `timebarColor` 含有时间尺边框及刻度条颜色 - 刻度条移动监听 ``` mTimebarView.setOnBarMoveListener(new TimebarView.OnBarMoveListener() { @Override public void onBarMove(long screenLeftTime, long screenRightTime, long currentTime) { if (currentTime == -1) { Toast.makeText(MainActivity.this, "当前时刻没有录像", Toast.LENGTH_SHORT).show(); } currentTimeTextView.setText(zeroTimeFormat.format(currentTime)); } @Override public void OnBarMoveFinish(long screenLeftTime, long screenRightTime, long currentTime) { currentTimeTextView.setText(zeroTimeFormat.format(currentTime)); } }); mTimebarView.setOnBarScaledListener(new TimebarView.OnBarScaledListener() { @Override public void onOnBarScaledMode(int mode) { Log.d(TAG, "onOnBarScaledMode()" + mode); } @Override public void onBarScaled(long screenLeftTime, long screenRightTime, long currentTime) { currentTimeTextView.setText(zeroTimeFormat.format(currentTime)); Log.d(TAG, "onBarScaled()"); } @Override public void onBarScaleFinish(long screenLeftTime, long screenRightTime, long currentTime) { Log.d(TAG, "onBarScaleFinish()"); } }); } ``` - 刻度条缩放监听 ``` mTimebarView.setOnBarScaledListener(new TimebarView.OnBarScaledListener() { @Override public void onOnBarScaledMode(int mode) { 返回缩放级别 Log.d(TAG, "onOnBarScaledMode()" + mode); } @Override public void onBarScaled(long screenLeftTime, long screenRightTime, long currentTime) { currentTimeTextView.setText(zeroTimeFormat.format(currentTime)); Log.d(TAG, "onBarScaled()"); } @Override public void onBarScaleFinish(long screenLeftTime, long screenRightTime, long currentTime) { Log.d(TAG, "onBarScaleFinish()"); } }); } ``` - Download ``` dependencies { compile 'com.dingyongxiang.library:timebarview:1.9' } ```