【问题标题】:How to add markers to maps in Xamarin如何在 Xamarin 中向地图添加标记
【发布时间】:2020-08-06 16:03:24
【问题描述】:

我是 Xamarin Development 的新手,出于某种原因,我尝试过实现标记,但我无法做到。我看过很多网站,但它们似乎已经过时,有些很难理解。 我只想在 Xamarin 中的地图 sdk 中添加一个简单的标记,我很困惑。 有人可以告诉我如何在地图(Xamarin)Visual Studio 代码中放置标记。 到目前为止,我刚刚实现了一个地图 SDK。 请帮帮我。

权限:

<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="YOUR_API KEY" />  
  
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />  
  
</application>  
  
<user-permission android:name="com.googlemap.googlemap.permission.MAPS_RECEIVE" android:protectionLevel="signature" />  
  
<uses-permission android:name="com.googlemap.googlemap.permission.MAPS_RECEIVE" />  
<uses-permission android:name="com.google.android.providers.gsf.permisson.READ_GSERVICES" />  
  
<uses-permission android:name="android.permission.INTERNET" />  
  
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  

到目前为止,我已经尝试过:

LatLng latlng = new LatLng(Convert.ToDouble(13.0291), Convert.ToDouble(80.2083));  
CameraUpdate camera = CameraUpdateFactory.NewLatLngZoom(latlng, 15);  
GMap.MoveCamera(camera);  
MarkerOptions options = new MarkerOptions().SetPosition(latlng).SetTitle("Chennai");  
GMap.AddMarker(options);  

但它不工作。

非常感谢!

【问题讨论】:

标签: java android google-maps xamarin


【解决方案1】:

感谢 Wendy Zang 添加谷歌地图SDK,

将此添加到 xaml:

xmlns:mymap="clr-namespace:Xamarin.Forms.Maps;assembly=Xamarin.Forms.Maps"

转到安卓清单:

<meta-data android:name="com.google.android.maps.v2.API_KEY"
               android:value="AIzaSyAT0nnp4bD8nH3Yf-GPJYvjpfo-z4jFvVQ"/>
    <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />

    <uses-library android:name="org.apachie.http.legacy"
                   android:required="false"/>

转到 C#

public MainPage()
        {
            InitializeComponent();
            Position position = new Position(36.9628066, -122.0194722);
            MapSpan mapSpan = new MapSpan(position, 0.01, 0.01);
            Map map = new Map(mapSpan)
            {
               MapType = MapType.Hybrid
            
            };
            Content = map;
            Pin pin = new Pin
            {
                Label = "Santa HEY MAN",
                Address = "The city with a boardwalk",
                Type = PinType.Place,
                Position = new Position(36.9628066, -122.0194722)
            };
            map.Pins.Add(pin);

            Pin pin2 = new Pin
            {
                Label = "USA",
                Address = "2020",
                Type = PinType.Place,
                Position = new Position(36.9628066, -122.0194722)
            };
            map.Pins.Add(pin);


        }

你就是这样做的!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-02
    • 2019-05-22
    • 1970-01-01
    • 2016-09-19
    • 2017-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多