android设置按钮,具有自定义颜色和圆角编程

时间:2013-02-03 06:23:03

标签: android button

我现在正在开发一个绘图应用程序,用户可以选择他们的定制颜色。 然后,定制的颜色按钮将显示所选择的颜色。然而,一旦它被设定为定制的颜色,它就变成了方角。

我的编码如下:

我的问题是:

  1. 如何将customBtn设置为圆角并填充定制颜色(最好以编程方式,因为客户选择的颜色会更改)

  2. 实际上新浮点数[]数组的10代表什么?

  3. 非常感谢!!

    编码:

     customColorCode = Color.argb(alphaSeekBar.getProgress(), redSeekBar.getProgress(), 
             greenSeekBar.getProgress(), blueSeekBar.getProgress());         
    
    
    
     RoundRectShape rs = new RoundRectShape(new float[] { 10, 10, 10, 10, 10, 10, 10, 10}, null, null);
     ShapeDrawable sd = new ShapeDrawable(rs);
     customBtn.setBackgroundDrawable(sd);
     customBtn.setBackgroundColor(customColorCode);
    

1 个答案:

答案 0 :(得分:1)

  1. 更改背景颜色以将不同颜色设置为按钮
  2. public RoundRectShape(float [] outerRadii,RectF inset,float [] innerRadii) 在API级别1中添加 RoundRectShape构造函数。指定外(圆)矩形和可选内(圆)矩形。
  3. 参数 outerRadii一个包含8个半径值的数组,用于外部圆整。前两个浮点数用于左上角(其余对沿顺时针方向对应)。如果外部矩形没有圆角,则传递null。 inset一个RectF,指定从内部矩形到外部矩形每侧的距离。如果没有内部,则传递null。 innerRadii一个包含8个半径值的数组,用于内部圆整。前两个浮点数用于左上角(其余对沿顺时针方向对应)。如果内部矩形没有圆角,则传递null。如果inset参数为null,则忽略此参数。