29
有幾個答案提到使用GradientDrawable.setDither(true)在Android中繪製平滑漸變。這對我的代碼沒有任何影響。任何想法,我必須改變,以獲得我的活壁紙看起來很好的漸變?如何在Android中在畫布上繪製平滑/漸變的漸變
GradientDrawable gradient = new GradientDrawable(Orientation.TL_BR, colors);
gradient.setGradientType(GradientDrawable.RADIAL_GRADIENT);
gradient.setGradientRadius(canvas.getWidth() * 2);
gradient.setDither(true);
gradient.setGradientCenter(-0.1f, -0.1f);
gradient.setBounds(cb);
gradient.draw(canvas);
我不完全明白的是,爲什麼你要定義座標('200,200,200')兩次。我應該如何動態調整'onDraw()'方法中漸變的位置和最重要的尺寸? – 2014-04-23 07:49:34
第一個座標定義了漸變的大小,第二個座標描述了包含漸變的圓的大小。如果座標不相同,則漸變不會填充圓或者會被圓邊限制切掉。 – 2014-12-10 15:15:08