Android双向滑动控件

Android双向滑动控件

96kaxi4it

关注

 

一 效果图


二 使用方法


由于新版jcenter强制添加组织还要收费貌似,所以改用jitpack了

最新版本号

最新版本号

  1. 在你root的gradle中添加引用
allprojects {
    repositories {
    ...
    maven { url "https://jitpack.io" }
    }
 }

然后在module的gradle中添加引用

dependencies {
    compile 'com.github.kaxi4it:BidirectionalSeekBar:1.0'
}
  1. 在你的布局文件中添加xml代码如:
<com.guyj.BidirectionalSeekBar
    android:id="@+id/bSeekBar1"
    android:layout_width="300dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_margin="20dp"
    app:ball_left_solid_color="@android:color/white"
    app:ball_left_stroke_color="@android:color/black"
    app:ball_right_solid_color="@android:color/holo_green_light"
    app:ball_right_stroke_color="@android:color/holo_green_dark"
    app:ball_radius_size="8dp"
    app:ball_stroke_size="1dp"
    app:text_left_num="566"
    app:text_right_num="820"
    app:text_min_unit="1"
    app:pb_height="3dp"
    app:pb_within_color="@android:color/holo_blue_bright"
    app:pb_without_color="@android:color/holo_red_light"
    app:ball_left_drawable="@mipmap/ic_launcher"
    app:ball_right_drawable="@mipmap/ic_launcher"
    />

ball_left_solid_color 代表左侧圆球的填充色
ball_left_stroke_color 代表左侧圆球的边框颜色
ball_right_solid_color 代表右侧圆球的填充色
ball_right_stroke_color 代表右侧圆球的边框颜色
ball_radius_size 圆球半径
ball_stroke_size 圆球边框显示宽度
text_left_num 进度条最小值 单位int
text_right_num 进度条最大值 单位int
text_min_unit 进度条可拖动的最小单位 单位int
pb_height 进度条高度
pb_within_color 双向选中部分的进度条颜色
pb_without_color 双向未选中部分的进度条颜色
ball_left_drawable 左侧圆球可以引用图片资源
ball_right_drawable 右侧圆球可以引用图片资源

目前版本使用中的关键点如下:
a. 如果使用图片资源代替圆球,那么需要左右2个圆球全部被替换,左右2个图片资源建议等宽等高,否则会出现你不想看到的结果,后续更新中可能会解决非等宽等高的图片问题
b. 当用图片资源替换圆球后,那么圆球半径,边框宽度,圆球颜色等属性为失效不可用状态,你写了也是白写
c. 如果不需要使用图片资源的话,请千万不要填写ball_left_drawable和ball_right_drawable属性

  1. Activity中的数据回调,通过该回调可以实时获得进度条所选中范围的值
bidirectionalSeekBar.setOnSeekBarChangeListener(new BidirectionalSeekBar.OnSeekBarChangeListener() {
    @Override
    public void onProgressChanged(int leftProgress, int rightProgress) {
        textView.setText("left=" + leftProgress + " right=" + rightProgress);
    }
});

三 最终章


希望该控件能解决您的双向滑动需求
项目完整代码在 https://github.com/kaxi4it/BidirectionalSeekBar 中可查看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值