gpt4 book ai didi

android - 使用 SupportMapFragment 而不是 MapFragment

转载 作者:行者123 更新时间:2023-11-30 02:54:06 25 4
gpt4 key购买 nike

我正在使用 Xamarin,并且我修改了 Google Maps API 2 示例以使用 SupportMapFragment 对象而不是 MapFragment 对象。

我能在 InitMapFragment 函数方面得到一些帮助吗?

代码如下:

private void InitMapFragment()
{
_mapFragment = FragmentManager.FindFragmentByTag("map") as SupportMapFragment;
if (_mapFragment == null)
{
GoogleMapOptions mapOptions = new GoogleMapOptions()
.InvokeMapType(GoogleMap.MapTypeNormal)
.InvokeZoomControlsEnabled(true)
.InvokeCompassEnabled(true);

FragmentTransaction fragTx = FragmentManager.BeginTransaction();
_mapFragment = SupportMapFragment.NewInstance(mapOptions);
fragTx.Add(Resource.Id.mapWithOverlay, _mapFragment, "map");
fragTx.Commit();
}
}

_mapFragment 以前是 MapFragment 类型,但现在是 SupportMapFragment

另外,目前这个activity继承自Activity,应该是FragmentActivity,还是别的什么?

这是我遇到的错误:

Error CS0039: Cannot convert type 'Android.App.Fragment' to 'Android.Gms.Maps.SupportMapFragment' via a reference conversion, boxing conversion, unboxing conversion, wrapping conversion, or null type conversion

Error CS1503: Argument 2: cannot convert from 'Android.Gms.Maps.SupportMapFragment' to 'Android.App.Fragment'

我很确定我需要使用 SupportFragmentManager 而不是 FragmentManager,但还是需要一些帮助。

编辑

尝试使用 SupportFragmentManager 时,出现以下错误:

Error CS0103: The name 'SupportFragmentManager' does not exist in the current context

提前致谢

最佳答案

SupportFramgentManager 继承自 FragmentActivity,因此请确保该 Activity 扩展了 FragmentActivity。然后修改你的代码如下:

private void InitMapFragment()
{
_mapFragment = SupportFragmentManager.FindFragmentByTag("map") as SupportMapFragment;
if (_mapFragment == null)
{
GoogleMapOptions mapOptions = new GoogleMapOptions()
.InvokeMapType(GoogleMap.MapTypeNormal)
.InvokeZoomControlsEnabled(true)
.InvokeCompassEnabled(true);

FragmentTransaction fragTx = SupportFragmentManager.BeginTransaction();
_mapFragment = SupportMapFragment.NewInstance(mapOptions);
fragTx.Add(Resource.Id.mapWithOverlay, _mapFragment, "map");
fragTx.Commit();
}
}

关于android - 使用 SupportMapFragment 而不是 MapFragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23604536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com