在Android地图上制作标记的颜色是什么?
有多少种颜色以及如何编写颜色代码?
答案 0 :(得分:66)
以下是我用于根据给定的Hue
颜色为标记生成动态String
颜色的方法。
可能对某人有用:)
Marker melbourne = mMap.addMarker(new MarkerOptions().position(MELBOURNE)
.icon(getMarkerIcon("#ff2299")));
// method definition
public BitmapDescriptor getMarkerIcon(String color) {
float[] hsv = new float[3];
Color.colorToHSV(Color.parseColor(color), hsv);
return BitmapDescriptorFactory.defaultMarker(hsv[0]);
}
答案 1 :(得分:57)
这是如何制作默认标记
Marker melbourne = mMap.addMarker(new MarkerOptions().position(MELBOURNE)
.icon(BitmapDescriptorFactory
.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)));
这些是你可以使用的常量
float HUE_AZURE
float HUE_BLUE
float HUE_CYAN
float HUE_GREEN
float HUE_MAGENTA
float HUE_ORANGE
float HUE_RED
float HUE_ROSE
float HUE_VIOLET
float HUE_YELLOW
答案 2 :(得分:14)
详细解答!
float hue = 120; //(Range: 0 to 360)
Marker melbourne = mMap.addMarker(new MarkerOptions().position(MELBOURNE)
.icon(BitmapDescriptorFactory
.defaultMarker(hue)));
你可以给出0到360之间的任何色调值,这里定义了一些常量(https://developers.google.com/android/reference/com/google/android/gms/maps/model/BitmapDescriptorFactory)
最好的方式!找到所需的色调(符合您要求的颜色)。
在Paint.Net/Photoshop编辑器(或其他)中打开此图像
在照片编辑器中转到色调选项并滑动色调条并记下最佳匹配的色调值。
Paint.net(调整 - >色调/饱和度)
对于Photoshop(摄影 - >调整 - >色调/饱和度)
如果值大于0,请使用精确值 ,如果值小于0,取值为postivie(绝对值),将其加到180并使用结果值。
答案 3 :(得分:1)
您想要的颜色符号!
我几天来一直在寻找这个答案,这里是创建自定义标记的正确方法:
'http://chart.googleapis.com/chart?chst=d_map_pin_letter&chld=xxx%7c5680FC%7c000000&.png'其中xxx是文本,5680fc是十六进制颜色代码,000000是文本的十六进制颜色代码。
这些标记是完全动态的,你可以创建你想要的任何气球图标。只需更改网址即可。
答案 4 :(得分:0)
没有人提及的简单解释:
设置标记颜色时,实际上是设置x
的{{1}}值
HSV(x, 100%, 100%)
中使用的x
值以上内容还意味着您无法以此方式设置任何标记颜色。为了将任何颜色表示为HSV,还应该更改(S)和(V),但Google Maps API不允许将其用作默认标记-它使用常量值“ 100%”。
如果要查看标记的外观,请打开任何HSV转换器(在线版本here),将(H)设置为您在上方获得的BitmapDescriptorFactory.defaultMarker(x)
值,(S)饱和度和(V)达到100%。
注意:
另外,也可以使用x
代替HSV(x, 100%, 100%)
,它可以编码完全相同的颜色。