拖動條(FlexSeekBar),在Android的各個地方都非常常用,本文旨在自研一套通用的進度條,非常適合車載App使用
樣式如下:
使用示例
<!--默認用法-->
<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的朋友,或者想要參考源碼的,可以評論留下聯系方式,我會第一之間發給你。