Android:グラデーションの塗りつぶし色でキャンバスAPI内に円弧を描画します
-
27-10-2019 - |
質問
グラデーション塗りつぶしを使用してキャンバスを使用して円弧を描画したい。どうすればこれを達成できますか?
解決
ここからこれを盗んだ:
でも問題なく動作します。代わりにLinearGradientを使用しました。 ジェネラコディセタグプレ
他のヒント
私のせいで、私はこのような人を描かなければなりませんでした:
多分あなたも。
では、考えてみましょう。 Sweep Gradientはどのように機能しますか? これを介して長方形を描画する場合: ジェネラコディセタグプレ
は次のようになります:
つまり、回転させるというアイデアです! ジェネラコディセタグプレ
最後に、円弧を描くことができます: ジェネラコディセタグプレ
私の完全な
色の配列と可変位置を使用することもできます。 たとえば、10色を定義します。10%の進捗ごとに1つずつです。 ジェネラコディセタグプレ
次のように、これらすべての色を色intArray内に配置します。 ジェネラコディセタグプレ
次に、位置を定義します。位置は0.0から1.0にスイープします(位置0.1はcolor_10に対応し、位置0.2はcolor_20に対応します) ジェネラコディセタグプレ
位置を定義したら、SweepGradientをペイントに設定できます ジェネラコディセタグプレ
最後に、シェーダーペイントで円弧を描くことができます: ジェネラコディセタグプレ
カスタムビューの最終効果:
所属していません StackOverflow