title: Show Map in Xamarin.Android, OnMapReady never called
body: <p>I'm trying to load a simple google map in Xamarin.Android project. I have my own renderer so I can not add that to Activity or via xaml or layout.(I have no fragments too). You can find my code here and the main problem is: <code>OnMapReady()</code> never called.</p>
  
  <pre><code>    public class AndroidMap:FragmentActivity
      {
          private GoogleMap GMap;
          public AndroidMap()
          {
              SetUpMap();
          }
          private void SetUpMap()
          {
              var mapFragment = FragmentManager.FindFragmentByTag("map") as MapFragment;
              if (mapFragment != null)
                  return;
              var mapOptions = new GoogleMapOptions()
                .InvokeMapType(GoogleMap.MapTypeHybrid)
                .InvokeZoomControlsEnabled(enabled: true)
                .InvokeCompassEnabled(enabled: true);
  
  
              var fragTx = FragmentManager.BeginTransaction();
              mapFragment = MapFragment.NewInstance(mapOptions);
              fragTx.Add(mapFragment, "map");
              //if (!IsFinishing &amp;&amp; !IsDestroyed) 
              //    fragTx.Commit();  
              var mapReadyCallback = new MyOnMapReady();
  
              mapReadyCallback.MapReady += (sender, args) =&gt;
              {
                  GMap = ((MyOnMapReady)sender).Map;//receive the Map object when completed
              };
  
              mapFragment.GetMapAsync(mapReadyCallback);        
              while (GMap == null)
                  Thread.Sleep(10);
              MainView = mapFragment.View;
          }           
      }
  
      public class MyOnMapReady:Java.Lang.Object, IOnMapReadyCallback
      {
          public GoogleMap Map { get; private set; }
          public event EventHandler MapReady;
          public void OnMapReady(GoogleMap googleMap)
          {
              Map = googleMap;
              var handler = MapReady;
              if (handler != null)
                  handler(this, EventArgs.Empty);//send the Map object back when completed
          }
      }
  </code></pre>
  
  <p>I appreciate if any body knows why it's always null.</p>