怎么在芬兰湾的科特林中实现一个StepView方法

  介绍

本篇文章为大家展示了怎么在芬兰湾的科特林中实现一个StepView方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

<强> TimeLineStepView

支持时间轴和StepView,三种布的局,支持水平布的局,垂直布局和自定义布局

,, <强>添加依赖

implementation  & # 39; com.joketng: TimeLineStepView: 1.0.1 # 39;

<强>使用方法

在布局文件中添加TimeLineStepView

& lt; com.joketng.timelinestepview.view.TimeLineStepView   ,,,android: id=癅 + id/rvVertical"   ,,,android: layout_width=癿atch_parent"   ,,,android: layout_height=皐rap_content"   ,,,的应用:线宽=? dp"   ,,,的应用:markSize=?0 dp"   ,,,android: paddingStart=?0 dp"   ,,,的应用:markStart=癅drawable/shape_circle_orange"   ,,,的应用:layoutType=皉ight"   ,,,/在

在代码中调用

//OrientationShowType对应三种布局方式//OrientationShowType.TIMELINE(时间轴方式)//OrientationShowType.CENTER_VERTICAL(垂直方式)//OrientationShowType.CENTER_HORIZONTAL(水平方式,支持左右滑动)   rvVertical.initData (listContent, OrientationShowType.CENTER_VERTICAL,   ,,,,,,,object :, TimeLineStepView.OnInitDataCallBack {   ,,,,,,,,,override  fun  onBindDataViewHolder(持有人:TimeLineStepAdapter.CustomViewHolder,,位置:,Int), {   ,,,,,,,,,,,   ,,,,,,,,,}      ,,,,,,,,,override  fun  createCustomView (leftLayout: ViewGroup,, rightLayout:, ViewGroup,,持有人:,TimeLineStepAdapter.CustomViewHolder), {   ,,,,,,,,,,,,//LayoutInflater.from(上下文).inflate (R.layout.item_add_left_view, leftLayout,,真的)   ,,,,,,,,,,,,//LayoutInflater.from(上下文).inflate (R.layout.item_add_right_view, rightLayout,,真的)   ,,,,,,,,,}      ,,,,,,,})   ,,,,,,,.setLayoutType(类型)//设置布局显示的样式左边:LayoutType.LEFT,右边:LayoutType.RIGHT,左右:LayoutType.ALL   ,,,,,,,//设置stepview进度激活的马克图标   ,,,,,,,.setMarkActive (ContextCompat.getDrawable(上下文,R.drawable.shape_dot_orange) ! !)   ,,,,,,,//设置stepview进度没激活的马克图标   ,,,,,,,.setMarkInActive (ContextCompat.getDrawable(上下文,R.drawable.shape_dot_gray) ! !)   ,,,,,,,//设置stepview当前进度点的马克图标   ,,,,,,,.setMarkCurrent (ContextCompat.getDrawable(上下文,R.drawable.shape_current) ! !)   ,,,,,,,//设置stepview第一个马克的图标   ,,,,,,,.setMarkStart (ContextCompat.getDrawable(上下文,R.drawable.shape_circle_orange) ! !)   ,,,,,,,//设置stepview最后一个马克的图标   ,,,,,,,.setMarkEnd (ContextCompat.getDrawable(上下文,R.drawable.shape_circle_orange) ! !)   ,,,,,,,//设置stepview线的宽度   ,,,,,,,.setLineWidth (context.dipc (2))   ,,,,,,,//设置stepview进度激活时线的颜色   ,,,,,,,.setLineActiveColor (ContextCompat.getColor(上下文,R.color.c_main_orange))   ,,,,,,,//设置stepview进度没有激活时线的颜色   ,,,,,,,.setLineInActiveColor (ContextCompat.getColor(上下文,R.color.c_main_gray))   ,,,,,,,//设置是否需要自定义布局(此时将createCustomView中的注释打开将自定义布局传入)   ,,,,,,,.setIsCustom(真正的)

listContent的取值为mutableListOf(),当存在自定义布局的时候,listContent中添加的实体需要继承BaseBean这个实体,如果不需要自定义布的局,可以直接添加实体BaseBean

listContent.add (BaseBean (=leftTitle “11-11",, leftTime =,“08:30",, rightTitle =,“订单提交成功,,,rightTime =,“订单提交成功描述“,,timeLineState =, TimeLineState.ACTIVE))   ,,,listContent.add (BaseBean (=leftTitle “11-11",, leftTime =,“08:31",, rightTitle =,“订单付款成功,,,rightTime =,“订单付款成功描述“,,timeLineState =, TimeLineState.ACTIVE))   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

怎么在芬兰湾的科特林中实现一个StepView方法