步骤进度控件
2018-08-02 本文已影响43人
Wocus
原文地址:https://github.com/vipulasri/Timeline-View

使用步骤
1.依赖
compile 'com.github.vipulasri:timelineview:1.0.6'
2.布局引入
<com.github.vipulasri.timelineview.TimelineView
android:id="@+id/time_marker"
android:layout_width="wrap_content"
android:layout_height="match_parent"
app:markerSize="20dp"
app:lineSize="2dp"
app:line="@color/colorPrimary"
app:linePadding="5dp"/>
属性 | 默认值 | 说明 |
---|---|---|
app:marker="@drawable/marker" | 蓝色实心圆 | 中间点图标 |
app:markerSize="25dp" | 25dp | 中间点图标的大小 |
app:markerInCenter="false" | true | 中间点图标是否居中 |
app:line="@color/primarColor" | 蓝色实心圆 | 中间点图标 |
app:marker="@drawable/marker" | 蓝色 | 线条的颜色 |
app:lineSize="2dp" | 2dp | 线条的粗细 |
app:lineOrientation="horizontal" | vertical | 布局方向 |
app:linePadding="5dp" | 0dp | 中间点图标周围的间隙 |
3.编码使用
val adapter=object :BaseQuickAdapter<String,BaseViewHolder>(R.layout.item_main1){
override fun convert(helper: BaseViewHolder, item: String) {
//绑定ID
val view=helper.getView<TimelineView>(R.id.time_marker)
//判断第一个圆设置为空心,第二个中间中间带圆点,第一个去掉圆上面的线条,最后一个去掉圆下面的线
if (helper.adapterPosition==0){
val d=VectorDrawableCompat.create(mContext.resources,R.drawable.ic_marker_inactive,mContext.theme)
d!!.setColorFilter(ContextCompat.getColor(baseContext,R.color.colorAccent), PorterDuff.Mode.SRC_IN)
view.setMarker(d)
view.setStartLine(android.R.color.white,helper.itemViewType)
}else if (helper.adapterPosition==1){
val d=VectorDrawableCompat.create(mContext.resources,R.drawable.ic_marker_active,mContext.theme)
d!!.setColorFilter(ContextCompat.getColor(baseContext,R.color.colorAccent), PorterDuff.Mode.SRC_IN)
view.setMarker(d)
}else if (helper.adapterPosition==mData.size-1){
view.setEndLine(android.R.color.white,helper.itemViewType)
}
view.initLine(helper.itemViewType)
}
}