`
大头K
  • 浏览: 183200 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

重写ItemizedOverlay onTap方法实现覆盖物点击弹出提示框遇到相关问题

阅读更多
目前遇到问题:当我点击地图上的覆盖物时可以弹出提示框,但点击该覆盖物以外的地方时,最佳的用户体验是把去掉该提示框。但就是消失不了。
类似:



以前也做过类似效果,搬过来总是不行,经过1个小时的磨叽,终于找到原因了。
先看看以前做法(看清楚返回值):
弹出提示框
		@Override
		public boolean onTap(int index)
		{
			LogUtil.d("ck", "onTap1");

			OverlayItem item = getItem(index);
			createPopWindow(item);

			return true;
		}


去掉提示框
@Override
		public boolean onTap(GeoPoint pt, MapView mMapView)
		{
			LogUtil.d("ck", "onTap2");

			// 点击pop以外时,把pop给删掉
			if (popP != null)
			{
				mMapView.removeView(popP);
			} else if (popH != null)
			{
				mMapView.removeView(popH);
			}
			return false;
		}


关键原因来了:
上面这种方法是对的,但是适用的场景是整个地图上只add进去一种覆盖物:
看下面代码:
 mMapView.getOverlays().add(overlay1);



如果像下面这样的话,上面的写法就达不到效果了(小弟就是这样活生生被坑害的 )
mMapView.getOverlays().add(overlay1);
					 mMapView.getOverlays().add(overlay2);


原因呢,个人的理解吧!地图上每add进去一个覆盖物,当我们点击地图的时候,(地图的任何地方),都会触发这个方法覆盖物数量的次数,上面我add进去两个,就触发了两次,因此刚刚弹出来的提示框马上又掉了。

好了,解决方法暂时只是想到而已,还没实现,实现之后现贴上
  • 大小: 93.1 KB
分享到:
评论

相关推荐

    Android学习笔记之百度地图(分条目覆盖物:ItemizedOverlay)

    Android学习笔记之百度地图(分条目覆盖物:ItemizedOverlay)

    android实现百度地图自定义弹出窗口功能

    但是它只支持将弹出内容转化为不多于三个Bitmap,如果这个弹出窗口里想有按钮来响应点击事件,用这个就不能满足要求了,于是,看了一遍百度地图覆盖物的API,我决定用自定义View的方法来实现类似的效果,先贴一下...

    ItemizedOverlay

    这是一个基于高德地图的测试,介绍了ItemizedOverlay的用法和populate()的作用。

    Baidu_map(百度地图)Android平台开发指南

    o 4.3 分条目覆盖物:ItemizedOverlay o 4.4 本地搜索覆盖物:PoiOverlay o 4.5 驾车路线覆盖物:RouteOverlay o 4.6 换乘路线覆盖物:TransitOverlay • 5 服务类 o 5.1 搜索服务 o 5.2 POI搜索及PoiOverlay o 5.3 ...

    使用ItemizedOverlay在mapview上创建浮动按钮

    使用ItemizedOverlay在mapview上创建浮动按钮,可以为坐标创建一个单击事件。

    android百度api2.1

     修复ItemizedOverlay onTap(GeoPoint p, MapView mapView)错误  修复2.2系统pop图片在hdpi文件夹下显示错误问题  修复多mapView切换,路线overlay相互影响  修复省级离线数据大小错误 更多详细信息,请...

    百度地图信息推送报告

    (六)增加点击标注弹出气泡(显示标注信息)的功能 12 (七)增加POI搜索功能 15 三、百度地图的信息推送 19 (一)PC服务端 19 (二) Android手机客户端 22 四、总结 24 五、应收集的资料及主要参考文献 24

    gmap气球源码

    gmap上的一个气球开发的实例,使用ItemizedOverlay类开发,效果不错。

    android-mapviewballoons

    当使用android地图外部库(com.google.android.maps)时,android-mapviewballoons会提供一个简单的方式来对地图覆盖进行标注,就是一个简单的信息气泡,它由...BalloonItemizedOverlay是ItemizedOverlay的一个抽象扩展

    android 地图扩展类

    mapviewballoons会提供一个简单的方式来对地图覆盖进行标注,就是一个简单的信息气泡。 它由 BalloonOverlayView组成,是一个代表显示你的MapView及BalloonItemizedOverlay的气泡的视图, ...

    ACTIVITY跳转

    ItemizedOverlay { private ArrayList<OverlayItem> mOverlays = new ArrayList(); public MyItemizedOverlay(Drawable defaultMarker) { super ( boundCenterBottom (defaultMarker));

    Android高级编程--源代码

     ◆与电话和网络硬件相关的所有内容,如电话api、sms和网络管理等  ◆高级开发主题,包括安全、ipc以及一些高级图形和用户界面技术  读者对象  本书面向希望在android手机平台上创建应用程序的所有人员。不管是...

    地图气泡效果

    地图气泡效果源码,当使用Android地图外部库时,android-mapviewballoons会提供一个简单的方式来对地图覆盖进行标注,就是一个简单的信息气泡。它由BalloonOverlayView组成,是一个代表显示你的MapView及...

    Android高级编程.pdf

    7.7.8 ItemizedOverlay和Overlayltem简介 7.7.9 将View固定到地图和地图的某个位置上 7.8 对Earthquake示例添加地图功能 7.9 小结 第8章 后台工作 8.1 服务简介 8.1.1 创建和控制服务 8.1.2 将活动和服务绑定 8.2 ...

    Google!Android手機應用程式設計入門

    第十二章 加入對話框(Dialog) 第十三章 查看線上內容(Uri) 第十四章 加入選單(Menu) 第十五章 定義 Android 清單(Manifest) 第十六章 加入新活動(Activity) 第十七章 傳送資料到新活動(Intent) 第十八章...

    《Android高级编程》

    7.7.8 ItemizedOverlay和Overlayltem简介 7.7.9 将View固定到地图和地图的某个位置上 7.8 对Earthquake示例添加地图功能 7.9 小结 第8章 后台工作 8.1 服务简介 8.1.1 创建和控制服务 8.1.2 将活动和服务绑定 8.2 ...

    一本android的好书beginning android 2 和 源码

    Drawing the ItemizedOverlay Handling Screen Taps My, Myself, and MyLocationOverlay The Key to It All ■Chapter 34: Handling Telephone Calls Report to the Manager You Make the Call! ■Chapter 35: ...

Global site tag (gtag.js) - Google Analytics