1つの方法だけを使用して、Androidのキャンバスに異なる色の境界線で円を描くことは可能drawCircle
ですか?
FILL_AND_STROKEのPaintStyleに気づきましたが、塗りつぶしと境界線の両方で異なる色を使用できないようです。
私は本当に2つのdrawCircleメソッドを呼び出す必要はありません。
1つの方法だけを使用して、Androidのキャンバスに異なる色の境界線で円を描くことは可能drawCircle
ですか?
FILL_AND_STROKEのPaintStyleに気づきましたが、塗りつぶしと境界線の両方で異なる色を使用できないようです。
私は本当に2つのdrawCircleメソッドを呼び出す必要はありません。
Paint.Styleの定義によると:
Paint.Style The Style specifies if the primitive being drawn is filled,
stroked, or both (in the same color).
ですから、一度に行うことはできないようです。
これを頻繁に行うと、境界線の円を描画するために2回の呼び出しを行う静的ヘルパーメソッドを作成できます。
または、カスタムandroid.graphics.drawable.shapes.Shapeオブジェクトを作成し、そのdraw(..)メソッドをオーバーライドすることもできます。
Peter Knegoに感謝します!
ここでShapexmlが必要な場合は、
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#FFFFFF"/>
<stroke android:width="5dp" android:color="#FFFF00" />
<size
android:width="50dp"
android:height="50dp" />
<corners android:radius="20dp" />
</shape>
クラスを作成し、2つをもう一方より小さくして境界線のある円を作成してから、事前定義された図形の代わりにクラスを図形として使用してみてください
Syle.STROKEを使用して、他の円の上にレイヤーを描画して円を描くことができます。