小编Isa*_*eda的帖子

Xamarin.Forms.Maps 2.3.4自定义MapRenderer禁用所有内容

我将Xamarin.Forms和Xamarin.Forms.Maps更新到新版本(2.3.4)后出现问题.

之后我还更新了Android项目中的所有Google Play服务(以及我讨厌的很多库).

主要的问题是我有一个自定义MapRenderer用于自定义引脚,在iOS和UWP工作正常,但在Android版本中这个自定义MapRenderer破坏了所有Map.任何属性更改或方法调用似乎都会被忽略.

例如,我有一个按钮来切换地图类型(混合或街道),该操作永远不会改变它.我还注意到(根据本教程:https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/custom-renderer/map/customized-pin/)属性"VisibleRegion"从未改变,所以以下代码从不执行:

protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
    {
        base.OnElementPropertyChanged(sender, e);

        if (e.PropertyName.Equals("VisibleRegion") && !_isDrawn)
        {
            // Do something with your custom map
        }
    }
Run Code Online (Sandbox Code Playgroud)

在里面,if我曾经填充我的自定义引脚(如上面的教程),现在我的地图总是空的.

现在我在里面填充我的地图IOnMapReadyCallback,它工作正常,但我仍然有绑定问题.

如果我忽略自定义MapRendered(删除装配线),所有绑定开始工作正常,但我的地图现在有旧引脚,所有自定义都消失了(显然).

在PCL我有类似的东西MyMap.MoveToRegion(...),MyMap.MapType = _currentType;但这些说明仅适用于不使用自定义MapRenderer的情况.

我的自定义MapRenderer与上面的教程几乎相同.

自定义Map是使用C#而不是使用XAML创建的,它没有任何XAML绑定,但如果我正在使用MapRenderer,则完全忽略任何属性更改或方法调用(如MoveToRegion或MapType).

有帮助吗?

谢谢

c# google-maps xamarin.forms

11
推荐指数
1
解决办法
2300
查看次数

标签 统计

c# ×1

google-maps ×1

xamarin.forms ×1