如何在android中设置可绘制的绘画颜色和背景?

如何在android中设置可绘制的绘画颜色和背景?,android,android-drawable,alpha-transparency,Android,Android Drawable,Alpha Transparency,下面是我的布局文件的片段: 布局图_1,带背面和e9e9e9 但是布局背景会影响底部背景,底部背景也会影响顶部背景 如何确保它们以正确的RGB颜色显示,我应该如何处理RGBA的alpha值? 我已经尝试将颜色设置为0xe2f5ff,alpha值为1,但我认为布局背景仍然对底色有影响 circlePaint.setColor(Color.parseColor("#00FFFFFF")); 其中,前2位表示Alpha。00至FF public class NodeDrawable extends

下面是我的布局文件的片段: 布局图_1,带背面和e9e9e9

但是布局背景会影响底部背景,底部背景也会影响顶部背景

如何确保它们以正确的RGB颜色显示,我应该如何处理RGBA的alpha值? 我已经尝试将颜色设置为0xe2f5ff,alpha值为1,但我认为布局背景仍然对底色有影响

circlePaint.setColor(Color.parseColor("#00FFFFFF"));
其中,前2位表示Alpha。00至FF

public class NodeDrawable extends Drawable {

  //...

  protected ShapeDrawable shapeDrawableBottom;
  protected ShapeDrawable shapeDrawableTop;

  @Override
  public void draw(Canvas canvas) {
          Paint circlePaint = shapeDrawableBottom.getPaint();
          circlePaint.setColor(DEFAULT_COLOR_BOTTOM);//DEFAULT_COLOR_BOTTOM = 0xe2f5ff
          circlePaint.setFlags(Paint.ANTI_ALIAS_FLAG);
          shapeDrawableBottom.setBounds();
          shapeDrawableBottom.draw(canvas);

          Paint circlePaint = shapeDrawableTop.getPaint();
          circlePaint.setColor(DEFAULT_COLOR_TOP);//DEFAULT_COLOR_TOP = 0x1f8fd2
          circlePaint.setFlags(Paint.ANTI_ALIAS_FLAG);
          shapeDrawableBottom.setBounds();
          shapeDrawableTop.draw(canvas);
  }

  //...
}


public class CustomView extends View {

    @Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        buildDrawables();
    }

    private void buildDrawables() {
        mCustomDrawable = new CustomDrawable();
    }

}
circlePaint.setColor(Color.parseColor("#00FFFFFF"));