当前位置: 首页 > news >正文

徒手绘制 Android 通用进度条

拖动条(FlexSeekBar),在Android的各个地方都非常常用,本文旨在自研一套通用的进度条,非常适合车载App使用

样式如下:

image.png

使用示例

<!--默认用法-->
<com.max.android.ui.seekbar.FlexSeekBarandroid:id="@+id/seekbar_demo_default"android:layout_width="1000px"android:layout_height="wrap_content"android:layout_marginTop="32px"android:max="10000"android:min="0"android:paddingStart="36px"android:paddingEnd="36px"app:layout_constraintStart_toStart0f="parent"app:layout_constraintTop_toBottomOf="@id/seekbar_demo_default_title" /><!--使用自定义容器包裹,可拓展触摸范围-->
<com.max.android.ui.seekbar.FlexSeekBarContaineandroid:id="@+id/seekbar_demo_dragging_containe""""android:layout_width="wrap_content"android:layout_height="300px"android:layout_marginTop="32px"android:background="@color/lui_core_pure_white_20"app:layout_constraintStart_toStart0f="parent"app:layout_constraintTop_toBottomOf="@id/seekbar_demo_dragging_title"><com.max.android.ui.seekbar.FlexSeekBarandroid:id="@+id/seekbar_demo_dragging"android:layout_width="1500px"android:layout_height="wrap_content"android:layout_gravity="center"android:background="@null"android:max="10000"android:min="0"android:paddingStart="36px"android:paddingEnd="36px"app:lui_drag_track_height="28px"app:lui_drag_trial_thumb_size="36px"app:lui_thumb_size="56px"app:lui_track_height="8px"app:lui_trial_thumb_size="24px" /></com.max.android.ui.seekbar.FlexSeekBarContainer>

接口说明

/*** 是否开启动效*/
var animEnable:Boolean = true/*** 是否开启可通过点击改变进度*/
var enableClick:Boolean = true/*** 是否显示track进度,如果false,则仅显示thumb*/
var enableTrackProgress: Boolean = true/** * 隐藏/展示进度*/
var hideProgress: Boolean = false/*** 滑轨高度,单位px,默认8*/
var trackHeightPx: Int = 8/*** 拖动状态滑轨高度,单位px,默认14*/
var dragTrackHeightPx: Int = 14/** * 滑块大小,单位px,默认48*/
var thumbSizePx: Int = 48/*** 试听点drawable* 2.0.0版本废弃*/ 
@Deprecated
var trialThumb: Drawable? = null/*** 试听点尺寸* 2.0.0版本废弃*/
@Deprecated
var trialThumbSizePx: Int = 12/*** 拖动时试听点尺寸* 2.0.0版本废弃*/
@Deprecated
var dragTrialThumbSizePx: Int = 22/*** 试听范围起始点* 2.0.0版本废弃*/
@Deprecated
var start: Int = INVALID_TRAIL_POINT/**
* 试听范围结束点
* 2.0.0版本废弃
*/
@Deprecated
var end: Int = INVALID_TRAIL_POINT

参数说明

  • anim_enable: boolean,是否开启动效,默认:开
  • click_enable: boolean,是否允许通过点击改变进度,默认:允许
  • disabled: boolean,是否停用进度条,默认:不停用
  • track_height: dimensition|reference,滑轨高度,默认:8px
  • drag_track_height: dimension|reference,拓动状态滑轨高度,默认:14px
  • thumb_size: dimension|reference,滑块直径,默认48px

接入后即可完成使用,样式和使用API都会比系统的更好用

需要体验sdk的朋友,或者想要参考源码的,可以评论留下联系方式,我会第一之间发给你。

http://www.lryc.cn/news/391575.html

相关文章:

  • 【TB作品】矩阵键盘电话拨号,ATMEGA16单片机,Proteus仿真 atmega16矩阵键盘电话拨号
  • JavaScript(6)——数据类型转换
  • 概率论与数理统计_下_科学出版社
  • Android 复习layer-list使用
  • 汉光联创HGLM2200N黑白激光多功能一体机加粉及常见问题处理
  • 引领汽车软件开发走向ASPICE认证之路
  • 【C/C++ new/delete和malloc/free的异同及原理】
  • Maven Archetype 自定义项目模板:高效开发的最佳实践
  • vue的ESLint 4格缩进 笔记
  • 【前端项目笔记】8 订单管理
  • 构建Yarn依赖树:深入解析与实践指南
  • 社区活动|FlowUs知识库的发展|先进技术的落地应用|下一代生产力工具你用了吗
  • Python基础语法(与C++对比)(持续更新ing)
  • LeetCode-Leetcode 1120:子树的最大平均值
  • AI在软件开发中的角色:助手还是取代者?
  • jboss 7.2
  • 鸿蒙开发:Universal Keystore Kit(密钥管理服务)【密钥生成介绍及算法规格】
  • 电气-伺服(4)CANopen
  • JavaFx基础知识
  • 学会python——用python制作一个登录和注册窗口(python实例十八)
  • Vue3+Element-plus的表单重置
  • pytorch中的contiguous()
  • Windows系统安装分布式搜索和分析引擎Elasticsearch与远程访问详细教程
  • 深入理解计算机系统 CSAPP 家庭作业8.26
  • 界面材料知识
  • 【Git】远程仓库操作
  • clonezilla(再生龙)克隆物理机linux系统,然后再去另一台电脑安装
  • 短视频电商源码的优势及软件架构解析
  • Git使用[推送大于100M的文件后解救办法]
  • RClone挂载有阿里云的AList