我正在尝试将一个带有线性透明度渐变的TextView应用于它,如下所示:
它位于这个布局中,该布局具有自己的半透明背景:
画笔模式似乎会移除其父视图的半透明背景色。我不确定如何阻止我的textview类中的绘制代码影响其父视图的背景颜色?
谢谢。
我有一个几乎能正常工作的实现,以下是代码:
public class MyTextView extends TextView {
Paint paint = new Paint();
void init() {
paint.setAlpha(0xffffffff);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.OVERLAY));
paint.setShader(
new LinearGradient(
0, 0, getWidth(), getHeight(),
0xffffffff, 0x00000000,
Shader.TileMode.CLAMP));
}
void draw(Canvas canvas) {
super.draw(canvas);
canvas.drawRect(0, 0, getWidth(), getHeight(), paint);
}
}
它位于这个布局中,该布局具有自己的半透明背景:
<View background="#33000000">
<MyTextView />
</View>
画笔模式似乎会移除其父视图的半透明背景色。我不确定如何阻止我的textview类中的绘制代码影响其父视图的背景颜色?
谢谢。