Skip to content

Easy-Ez/ScaleView

Repository files navigation

ScaleView

定制性较高的横向滑动的卷尺

test

Example

ScaleView具有较高的可定制性,宽高支持match_parent, wrap_content以及具体值.

    <cf.sadhu.ScaleView
        android:id="@+id/sacleview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:background="@color/color_background"
        app:decimalFormat="0.0"
        app:graduationLineColor="@color/white"
        app:graduationLineHeight="38dp"
        app:graduationLineMargin="10dp"
        app:graduationLineWidth="4dp"
        app:graduationStep="0.01"
        app:graduationStepHelper="100"
        app:graduationTextColor="@color/white"
        app:graduationTextMargin="12dp"
        app:graduationTextSize="17sp"
        app:indicator="@drawable/bg_indicator"
        app:initialValue="100.9"
        app:maxVaule="230.1"
        app:minValue="100"/>
        

下图是上面xml展示的样式

下表是所有属性及其含义

Attribute Type Summary
minValue float 卷尺的最小值
maxVaule float 卷尺的最大值
initialValue float 卷尺的初始值,默认为最小,最大值间的中位数
indicator reference 指示器drawable,xml中的shape如果没有指定宽高,indicator的宽高则与长刻度线的宽高相同
graduationStep float 刻度尺的最小刻度,默认是1
graduationStepHelper integer 将最小刻度变为整数需要乘的数,默认是1
graduationLineMargin dimension 刻度间的间距
graduationTextColor color 刻度值文字的颜色
graduationTextSize dimension 刻度值文字的大小
graduationTextMargin dimension 刻度值文字距离长刻度线的间距
graduationLineColor color 长刻度线的颜色
graduationLineWidth dimension 长刻度线的宽,短刻度线为长刻度线的一半
graduationLineHeight dimension 长刻度线的高,短刻度线为长刻度线的一半
decimalFormat dimension 刻度值文字的格式,可参考java中的DecimalFormat类,默认值是"0"

下表是公开方法及其含义

Method Summary
setIndicatorDrawable(Drawable indicatorDrawable) 设置指示器drawable
initialData(float minValue, float maxValue, float step, int stepHelper,float initialValue) 设置卷尺的最小/最大值,初始值,刻度值,以及stepHelper
initialData(float minValue, float maxValue, float step, int stepHelper) 设置卷尺的最小/最大值,刻度值,以及stepHelper,初始值默认为最小/最大值的中位数
setOnGraduationValueChange(OnGraduationValueChangeListener listener) 设置刻度值选中时候的回调

About

横向滑动的卷尺

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages