Android.Gms.Maps.Utils.Clustering刷新标记

时间:2015-10-27 08:40:17

标签: android google-maps xamarin

我'使用' Android.Gms.Maps.Utils.Clustering' Xamarin android的绑定库。

我在地图中显示大约1000个带有搜索功能的项目。所以每次用户搜索对象时,我都应该在Map中刷新标记,这是我的代码:

private void SetPointersOnMap (List<MerchantInfo> merchants)
        {
            if (merchants != null) {
            _clusterManager.ClearItems ();
                if (_map != null) {
                    var count = merchants.Count;

                    List<ClusterItem> items = new List<ClusterItem> ();

                    items = merchants.Where (item => item.Longitude.HasValue && item.Latitude.HasValue)
                        .Select (item => new ClusterItem (item.Latitude.Value, item.Longitude.Value, item.MerchantId)).ToList ();
                    _clusterManager.AddItems (items);
                }
                _clusterManager.Cluster ();
                _infoWindowAdapter = new InfoWindowAdapter (null, merchants, this.LayoutInflater);
                _map.SetInfoWindowAdapter (_infoWindowAdapter);
            }
        }

它通常有效,但在某些情况下,我无法准确确定何时,我无法正常工作,这行代码记录错误:

_clusterManager.ClearItems (); 
  

[System.out](HTTPLog)-Static:isSBSettingEnabled false [时间轴]   时间轴:Activity_idle id:android.os.BinderProxy@1bb9c140   时间:774533321在Kunicardus.Droid.MerchantsView.SetPointersOnMap   (System.Collections.Generic.List`1商家)[0x0000e] ....

在某些设备中也有另一个例外:

  

[monodroid-gc] GC清理摘要:测试了104个对象 - 复活   90。   [Mono] GC_OLD_BRIDGE num-objects 104 num_hash_entries 1603 sccs size 1347 init 0.00ms df1 5.25ms sort 0.28ms dfs2 3.81ms setup-cb   0.29ms自由数据2.71ms链接2418/2418/6240/12 dfs通过4125/3765 [单声道] GC_MINOR :(幼儿园全程)暂停13.89ms,总计14.29ms,桥   83.17ms在Kunicardus.Droid.MerchantsView.SetPointersOnMap推广224K主要18128K los 11233K   (System.Collections.Generic.List`1商家)[0x0000e]

0 个答案:

没有答案