Android SeekBar带分隔符

时间:2015-11-21 18:02:51

标签: android android-seekbar

我正在制作一个自定义SeekBar,如下图所示。

Custom SeekBar with separator

在通过互联网搜索后,我无法找到满足此问题的最佳解决方案。以下代码是正常的SeekBar控件,请帮我改变上面的图像。

<SeekBar
 android:id="@+id/seekBar"
 android:layout_width="fill_parent"
 android:layout_height="@dimen/sbumit_form_field_height"
 android:layout_marginTop="@dimen/sbumit_form_field_top_mergin"
 android:layout_marginLeft="@dimen/sbumit_form_field_side_mergin"
 android:layout_marginRight="@dimen/sbumit_form_field_side_mergin"
 android:max="6"/>

2 个答案:

答案 0 :(得分:7)

您的图片正好显示 this library my fork)。如果您不被允许使用它您至少可以检查解决方案并编写您自己的代码。

检查ComboSeekbar onDraw方法。 检查分叉的ComboSeekbar onDraw method

用法示例:

  1. 打开您的项目 build.gradle(根文件夹)并添加:

    allprojects {
        repositories {
            maven { url "http://dl.bintray.com/arnoult-antoine/maven/" }
            ...
        }
    }
    
  2. 在app主模块(可能是&#34; app&#34;目录) build.gradle 文件中进行编译库添加:

    dependencies {
        ...
        compile 'com.aat:android-comboseekbar:1.0.2@aar'
    }
    
  3. 转到 XML布局文件并输入:

    <com.infteh.comboseekbar.ComboSeekBar 
        xmlns:cbs="http://schemas.android.com/apk/res-auto"
        android:id="@+id/comboseekbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        cbs:myColor="@android:color/black"
        cbs:textSize="16sp" />
    
  4. Activity onCreate 中使用以下代码初始化它:

    ComboSeekBar comboSeekBar = (ComboSeekBar) findViewById(R.id.comboseekbar);
    List<String> points = new ArrayList<>();
    points.add("Point 1");
    points.add("Point 2");
    points.add("Point 3");
    points.add("Point 4");
    comboSeekBar.setAdapter(points);
    
  5. 享受您的Combo Seekbar:

  6. enter image description here

答案 1 :(得分:0)

任何您想要的东西都在这里

请参见here

它可以自定义分隔符和文本,并且还有侦听器。