using Android.App;
using Android.Widget;
using Android.OS;
using System;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Gms.Maps;
using Android.Gms.Maps.Model;
using System.Configuration;
namespace googlemaps
{
[Activity(Label = "googlemaps", MainLauncher = true, Icon = "@drawable/icon")]
MainActivity
public class MainActivity: Activity, IOnMapReadyCallback
{
private GoogleMap GMap;
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.XMLFile1);
SetUpMap();
}
private void SetUpMap()
{
if (GMap == null)
{
MapFragment mapFragment = (MapFragment)FragmentManager.FindFragmentById(Resource.Id.map).GetMapAsync(this);
}
}
public void OnMapReady(GoogleMap googleMap)
{
MarkerOptions MarkerOptions = new MarkerOptions();
MarkerOptions.SetPosition(new LatLng(16.03, 108));
MarkerOptions.SetTitle("My Postion");
googleMap.AddMarker(MarkerOptions);
googleMap.UiSettings.ZoomControlsEnabled = true;
googleMap.UiSettings.CompassEnabled = true;
googleMap.MoveCamera(CameraUpdateFactory.ZoomIn());
}
}
}
和
'片段'不包含' GetMapAsync'的定义没有扩展方法' GetMapAsync'接受第一个类型' Fragment'可以找到(你错过了使用指令或汇编引用吗?)googlemaps
提前谢谢
答案 0 :(得分:0)
你的方法" OnMapReady"需要覆盖基类的方法。
public override void OnMapReady(GoogleMap gmap)
{
//dostuff
}
我不是100%,因为我从来没有专门做过这件事,但我相当肯定它会抱怨这种回调方法。
我用this来查找。这是用于Android开发的原生Java,但它主要从经验转化为Xamarin。