如何在SeekBar中制作颜色渐变?

我想将SeekBar(即旧学校Java Slider)用于颜色渐变选择器.我见过这样的一些例子,但它们都需要创建新类等.必须有一种方法来修改或覆盖原始类.或者只是用渐变替换背景.

解决方法:

我在这里弄清楚你是怎么做到的.

您可以在XML中创建标准搜索条.

<SeekBar
       android:id="@+id/seekbar_font"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:layout_margin="10px"
       android:layout_below="@id/color_font_text"
       android:max="100"
       android:progress="50"></SeekBar>

然后通过创建boxShape在onCreate()中自定义搜索条,然后在其中强制使用LinearGradient.

LinearGradient test = new LinearGradient(0.f, 0.f, 300.f, 0.0f,  

      new int[] { 0xFF000000, 0xFF0000FF, 0xFF00FF00, 0xFF00FFFF,
      0xFFFF0000, 0xFFFF00FF, 0xFFFFFF00, 0xFFFFFFFF}, 
      null, TileMode.CLAMP);
ShapeDrawable shape = new ShapeDrawable(new RectShape());
shape.getPaint().setShader(test);

SeekBar seekBarFont = (SeekBar)findViewById(R.id.seekbar_font);
seekBarFont.setProgressDrawable( (Drawable)shape );

这是当前代码高于SeekBar Color Gradient的图像

上一篇:微信小程序 mpvue + picker(mode=selector)


下一篇:如何以编程方式设置Android铃声