Diferenças da API do Android setShadowLayer
Eu desenvolvo um componente de visualização personalizada para meu aplicativo e estou lutando para adicionar uma sombra a um círculo.
Aqui está o código da minha classe estendendo View
public class ChartView extends View {
public ChartView(Context context, AttributeSet attributeSet){
super(context, attributeSet);
init();
}
Paint paint;
public void init(){
paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.WHITE);
paint.setStyle(Paint.Style.FILL);
paint.setShadowLayer(30, 0, 0, Color.RED);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawCircle(getWidth()/2, getHeight()/2,50, paint);
}
}
No entanto, notei que, dependendo da API, há um grande impacto no shadowLayer.
Aqui está a saída com
<uses-sdk android:targetSdkVersion="13"/>
E aqui está a saída com
<uses-sdk android:targetSdkVersion="14"/> //Higher target API yields the same output.
Alguma ideia de como superar esse comportamento indesejado?
Cumprimentos