如何将不透明度设置为 ESRI 地图中的选定图形
How to set Opacity to a selected Graphic in ESRI map
在我的 android 应用程序中,我在 ESRI map using PictureMarkerSymbol class(使用 Kotlin)上添加了一个图片标记符号,例如:
val markerSymbol = PictureMarkerSymbol.createAsync(ContextCompat.getDrawable(context!!, icon) as BitmapDrawable?).get()
这里我通过设置符号的默认不透明度并将其添加到叠加层来在地图上添加多个标记,例如:
markerSymbol.opacity = 0.3f
//add a new graphic as marker point
val markerGraphicPoint = Point(activeCall.lang, activeCall.lat, spatialReference)
val graphic = Graphic(markerGraphicPoint, markerSymbol)
graphicsOverlay.graphics.add(graphic)
现在我想将不透明度设置为选定的图形(无论如何我正在从数组中获取选定的图形符号)。我可以从选定的图形中获取符号,例如:
selectedGraphic?.symbol
我想为所选符号设置不透明度,例如:
selectedGraphic?.symbol = 1.0f // Need this one
但是怎么给它设置opacity呢,这个symbol里面没有setOpacity class
或者如何从所选图形中获取 PictureMarkerSymbol。?
我尝试通过这种方式将其转换为 PictureMarkerSymbol
:
selectedMarker?.symbol as PictureMarkerSymbol
但是我得到了 class 转换异常
也尝试过:
val markerGraphicsOverlay = selectedMarker?.graphicsOverlay
markerGraphicsOverlay?.opacity = 0.1f
但结果相同。
将符号转换为 PictureMarkerSymbol
if (selectedGraphic!= null && selectedGraphic?.symbol != null) {
val pictureMarkerSymbol = selectedGraphic?.symbol as PictureMarkerSymbol
}
在我的 android 应用程序中,我在 ESRI map using PictureMarkerSymbol class(使用 Kotlin)上添加了一个图片标记符号,例如:
val markerSymbol = PictureMarkerSymbol.createAsync(ContextCompat.getDrawable(context!!, icon) as BitmapDrawable?).get()
这里我通过设置符号的默认不透明度并将其添加到叠加层来在地图上添加多个标记,例如:
markerSymbol.opacity = 0.3f
//add a new graphic as marker point
val markerGraphicPoint = Point(activeCall.lang, activeCall.lat, spatialReference)
val graphic = Graphic(markerGraphicPoint, markerSymbol)
graphicsOverlay.graphics.add(graphic)
现在我想将不透明度设置为选定的图形(无论如何我正在从数组中获取选定的图形符号)。我可以从选定的图形中获取符号,例如:
selectedGraphic?.symbol
我想为所选符号设置不透明度,例如:
selectedGraphic?.symbol = 1.0f // Need this one
但是怎么给它设置opacity呢,这个symbol里面没有setOpacity class
或者如何从所选图形中获取 PictureMarkerSymbol。?
我尝试通过这种方式将其转换为 PictureMarkerSymbol
:
selectedMarker?.symbol as PictureMarkerSymbol
但是我得到了 class 转换异常
也尝试过:
val markerGraphicsOverlay = selectedMarker?.graphicsOverlay
markerGraphicsOverlay?.opacity = 0.1f
但结果相同。
将符号转换为 PictureMarkerSymbol
if (selectedGraphic!= null && selectedGraphic?.symbol != null) {
val pictureMarkerSymbol = selectedGraphic?.symbol as PictureMarkerSymbol
}