我开始玩渐变,我发现绘制1向渐变非常容易(例如从上到下,从左向右或对角线...),但是如何绘制2向渐变?我的意思是这样的:



大的蓝色矩形是2向渐变的-在右上角是蓝色,在左边是蓝色,在下面是黑色。怎么画呢?

最佳答案

答案是:您必须组合两个不同的LinearGradients,例如:

LinearGradient val = new LinearGradient(0, 0, 0, height, Color.WHITE, Color.BLACK, TileMode.CLAMP);
                LinearGradient sat = new LinearGradient(0, 0, width, 0, Color.WHITE, Color.HSVToColor(hsvCopy), TileMode.CLAMP);
                ComposeShader merged = new ComposeShader(val, sat, PorterDuff.Mode.MULTIPLY)


;

当然很重要:

[view with this background].setLayerType(View.LAYER_TYPE_SOFTWARE, null);


在Android 3.0及更高版本的手机上

09-26 17:54