一、首先展示下效果
二、如何使用自定义Drawable
private void initRainbowView(){
TextView rainbowView = findViewById(R.id.rainbowDrawableView);
RainbowDrawable.Builder builder = new RainbowDrawable.Builder();
//设置Drawable的背景色,也可以不设置。
builder.setBackgroundColor(Color.parseColor("#60000000"));
//设置彩虹边框旋转一周需要的时间。
builder.setDuration(2000);
//设置圆角
builder.setRadius(50);
//设置彩虹条宽度
builder.setStrokeWidth(10);
//设置彩虹条的颜色变化
builder.setGradientColorAndPosition(new int[]{Color.RED, Color.GREEN, Color.BLUE, Color.GREEN, Color.RED},new float[]{0f,0.2f,0.4f,0.6f,0.8f,1.0f});
rainbowView.setBackgroundDrawable(builder.build());
}
三、如何实现