Android自定义滑动验证条的示例代码

  

本文介绍了Android自定义滑动验证条的示例代码,分享给大家,具体如下:
  

  

*注:不知道为什么,仅有的标签在这里没用了,所以我也只能用减价的语法来写了

  

项目地址:https://github.com/994866755/handsomeYe.seekbar.github.io

  

需求:   

在我们的某些应用中需要滑动验证。比如说这个样子的:

  

 Android自定义滑动验证条的示例代码”> <br/>
  </p>
  <p>刚开始我也很懵逼要怎么去弄,结果我去看了一些人的代码,有人是用自定义viewgroup去做,就是viewgroup包含滑动块和滑动条。但我觉得太麻烦,直到我知道android有个控件seekbar可以实现这个效果。</p>
  <p> <强>一、使用SeekBar实现滑动条</强> </p>
  
  <pre类=   & lt; SeekBar   android: layout_width=" match_parent "   android: layout_height=" wrap_content "   android: layout_margin=" 10 dp”   android: max=" 100 "   android: maxHeight=" 45 dp "   android: minHeight=" 45 dp "   android:进步=" 0 "   android:点击=" false "   android: progressDrawable=" @drawable/bg_forgotpassword_seekbar”   android:拇指=" @drawable/bg_seekbar_thumb”   android: id=癅 + id/sb_progress”   android: thumbOffset=" 1 dp "   android:填充=" 1 dp "/在      

这里网上有很多介绍,我也顺便解释一下:

  

(1) android:马克斯是总共的容量,这里设100就行。

  

(2) android: progressDrawable是只设置进度框的背景,就是整个条的背景,比如图中的没滑动的时候是灰色,滑动的地方是绿色。

  

(3) android:拇指这个属性是设置滑块的样式,比如图中的没滑时是在祝辞,滑到最右变成勾。默认的样式是一个圆。

  

(4) android: thumbOffset这个是滑块的起始位置,怎么说呢,你可以当图中第一条的滑块是android: thumbOffset=? dp”,如果你设置成正数,这个滑块的位置会向左移动,设成负数会向右移动。我这里设成1是以为是0的时候会挡住左边的边框,这样不好,看我设成1为了让滑块向右移动一点。

  

<强>二,设置SeekBar样式

  

写好布局后来写下样式,也就是上面的progressDrawable和拇指属性。

  

(1) progressDrawable(滑动条)

        & lt; layer-list xmlns: android=" http://schemas.android.com/apk/res/android "比;   & lt; !——seekBar背景——比;   & lt;项目android: id=" @android: id/背景”在   & lt; !——形状——比;   & lt;形状android:形状=熬匦巍北?   & lt; !——大小——比;   & lt;大小android:身高=?9 dp/祝辞   & lt; !——圆角——比;   & lt;角落android:=? dp/半径比;   & lt; !——背景——比;   & lt;固体android:颜色=" # E7EAE9”/比;   & lt; !——边框——比;   & lt;中风   android:宽度=" 1 dp "   android:颜色=" # C3C5C4 "/比;   & lt;/shape>   & lt;/item>   & lt; !——seekBar的进度条——比;   & lt;项目android: id=" @android: id/进展”比;   & lt; clip>   & lt; shape>   & lt;角落android:=? dp/半径比;   & lt;固体android:颜色=" # 7 ac23c "/比;   & lt;中风   android:宽度=" 1 dp "   android:颜色=" # C3C5C4 "/比;   & lt;/shape>   & lt;/clip>   & lt;/item>   & lt;/layer-list>   之前      

(2)拇指(滑块)

        & lt;选择xmlns: android=" http://schemas.android.com/apk/res/android "比;   & lt; !——按下状态——比;   & lt;项目android:可拉的=" @mipmap/seekbar_thumb”android: state_pressed=" true "/比;      & lt; !——有焦点状态——比;   & lt;项目android:可拉的=" @mipmap/seekbar_thumb”android: state_focused=" true "/比;      & lt; !——普通状态——比;   & lt;项目android:可拉的=癅mipmap/seekbar_thumb”/比;   & lt;/selector>      之前      

这里就不多介绍了。

  

<强>三,加入监听

  

在活动中加入监听,比如你可以让滑块不滑到最右时自动弹回原位等等。

        sbProgress。setOnSeekBarChangeListener(新SeekBar.OnSeekBarChangeListener () {   @Override   公共空间alt=" Android自定义滑动验证条的示例代码”>
  

  

你可以自己加文字在中间,这个我就不在演示里弄了。

  

<强>四,剩下的处理

  

你以为这样就完啦?那你太天真了,你会发现如果你按上面的步骤做,最后会有一个很蛋疼的效果:

Android自定义滑动验证条的示例代码