基于地图的短信追踪小练习(8)地图覆盖物点击事件与活动间数据的传递

我们现在要实现的功能是点击地图上朋友的marker,跳转到显示朋友信息的界面


1.marker点击事件

mBaiduMap.setOnMarkerClickListener(new OnMarkerClickListener() {
			
			@Override
			public boolean onMarkerClick(Marker marker) {
}

2.获取发送方和经纬度

String[] s = fullMessage.split("/");
						LatLng point = new LatLng(Double.valueOf(s[0])+0.002,Double.valueOf(s[1])+0.002);
						BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.icon_marker);  
						OverlayOptions option = new MarkerOptions().position(point).icon(bitmap);  
						Marker mk = (Marker) mBaiduMap.addOverlay(option);
			            Bundle bd = new Bundle();
			            bd.putString("address", address);
			            bd.putString("latitude",s[0]);
			            bd.putString("longtitude", s[1]);
			            mk.setExtraInfo(bd);

对于setExtra方法,是Overlay的方法,但是marker继承了这个方法

public void setExtraInfo(Bundle extraInfo)
设置覆盖物额外信息
参数: extraInfo - 覆盖物额外信息

3.获取到marker的信息并且用intent传递

 intent.putExtra("number",marker.getExtraInfo().get("address").toString());
				  intent.putExtra("latitude",marker.getExtraInfo().get("latitude").toString());
				  intent.putExtra("longtitude",marker.getExtraInfo().get("longtitude").toString());
                  startActivity(intent);  


对于getExtraInfo根据键来获取信息

public Bundle getExtraInfo()
获取覆盖物额外信息
返回:覆盖物额外信息


4.在开启的活动中获取到intent的信息,并动态为textview设置

      Intent intent = getIntent();
	        String number = intent.getStringExtra("number");
	        String lantitude = intent.getStringExtra("lantitude");
	        String longtitude = intent.getStringExtra("longtitude");
	        TextView tv1 = (TextView)findViewById(R.id.txt_friend_number);
			tv1.setText(number);
			TextView tv2 = (TextView)findViewById(R.id.txt_friend_long_lang);
			tv2.setText(longtitude);
			TextView tv3 = (TextView)findViewById(R.id.txt_friend_altitude);
			tv3.setText(lantitude);



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值