Android用のGoogle Maps v2 APIを使用していますが、fillColorの透明度を制御できません。塗りつぶされたポリゴンの下にマップが表示されるようにしたいと考えています。それを行う方法はありますか?
助けてくれてありがとう!
Android用のGoogle Maps v2 APIを使用していますが、fillColorの透明度を制御できません。塗りつぶされたポリゴンの下にマップが表示されるようにしたいと考えています。それを行う方法はありますか?
助けてくれてありがとう!
さて、標準の 4 バイト カラーがどのようにエンコードされるかを説明しましょう。
標準のピクセル カラーは 4 バイトで構成されます。
各チャンネルは、特定の色部分の彩度を表します。したがって、完全に不透明な赤色を作成する必要がある場合は、次のチャネル値を指定する必要があります。
半透明にしたい場合は、アルファチャンネル値を 2 で割る必要があります (255/2 = 127):
それでは、アンドロイドに戻りましょう。Android では、ほとんどの場合、16 進数値を指定して色を指定できます。
polygon.setFillColor(0xFF00FF00); //not transparent green color
16 進数では、すべてのチャネルを 2 桁の 16 進数で指定できます。
この色を半透明にしたい場合はFF
、2で割る必要があります。
0xFF/2 = 0x7F //the same as 255/2 = 127
polygon.setFillColor(0x7F00FF00); //half-transparent green color
基本的にあなたがする必要があるのは、あなたが探している透明度を得るためにアルファチャンネル値で遊ぶことです
基本的に私のために働いたのは:
polygon = mGoogleMap.addPolygon(new PolygonOptions().
addAll(points)
.fillColor(0x33FF0000)
.strokeColor(Color.RED)
.strokeWidth(3))