使用BitmapDescriptorFactory
有可供你如何獲得BitmapDescriptor
FromResource
FromAsset
FromPath
FromBitmap
兩個例子多個選項:
要使用FromResource
,圖像必須是你的資源樹中,assumably內Drawable
子文件夾,Xamarin將產生的Resource.Drawable.XXXXX
形式的ID描述你和這將是一個整型常量:
var overlayOption = new GroundOverlayOptions()
.InvokeImage(BitmapDescriptorFactory.FromResource(Resource.Drawable.overlayface2))
.Position(e.Point, 5000f, 5000f);
FromAsset
負載從 「資產」 子文件夾中的圖像:
var overlayOption = new GroundOverlayOptions()
.InvokeImage(BitmapDescriptorFactory.FromAsset("OverlayFace.png"))
.Position(e.Point, 5000f, 5000f);
FromPath
負荷從任意路徑的形象,所以你可以加載您下載並存儲在應用程序的緩存目錄中的圖像,或存儲在SD卡的圖像,等等
var overlayOption3 = new GroundOverlayOptions()
.InvokeImage(BitmapDescriptorFactory.FromPath("/mnt/sdcard/Download/OverlayFace.png"))
.Position(e.Point, 5000f, 5000f);
注意:人們碰到的最大問題是沒有正確設置圖像的大小,它在公里。不是像素,不是英里等...
注意:也爲了速度,保持你的圖像大小在2的冪,否則地圖庫將不得不將它轉換成每次它的權力2圖像加載覆蓋(內存和性能命中)
今天@SushiHangover你是一個救星! –
@BarneyCambrie沒有問題,我使用'FromPath'很多,因爲我的應用程序將地圖疊加層下載到應用程序的緩存目錄中(機場信息和基於KML的矢量機場圖紙等) – SushiHangover