全国 切换城市 领事地图标注商户店铺定位可将商户企业名称和地址标注在各大网络地图数据中,地图标注店铺位置新增、认领、删除、修改等服务均可办理!
领事地图标注客服

android地图怎么发送位置信息

伊卡巴

伊卡巴

中,有很多手势操作都很让人又爱又恨。一方面可以更便捷的体现更多功能,提升应用的体验,一方面繁复多变的操作背后有着许多开发技巧和难题。这里分享一个长按地图获取位置信息的手势。为了更明了,先上个展示效果:长按地图某点显示该点地理位置信息功能通过构造一个locationSelectOverlay类来定义该功能,在地图上对长按手势进行监听,一旦有这个发生就调用getAddressFromServer()方法来显示地址信息。在该工程中分别定义4个类longPressMap.java,locationSelectOverlay.java,popUpPanel.java,Constants.javalongPressMap.java 为显示一个地图类,通过实例化一个locationSelectOverlay类实现长按地图显示地理位置信息功能代码如下://longPressMap 类继承MapActivity对mapview资源进行管理public class longPressMap extends MapActivity {private MapView mMapView;locationSelectOverlay mSelectLay;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//使用setContentView方法调用R.layout.activity_regeocoder布局文件,显示地图setContentView(R.layout.geocoder);//获取地图视图的id,赋值给mMapView mMapView = ((MapView) findViewById(R.id.geocode_MapView));// 设置启用内置的缩放控件mMapView.setBuiltInZoomControls(true); //实例化一个locationSelectOverlay类mSelectLay = new locationSelectOverlay(this, mMapView, new popUpPanel(this, mMapView));//将该功能加载到此地图上,启用长按地图显示该点地址信息的功能mMapView.getOverlays().add(mSelectLay);} }复制代码locationSelectOverlay 示例代码如下://locationSelectOverlay类继承Overlay接口,实现OnGestureListener手势监听public class locationSelectOverlay extends Overlay implements OnGestureListener {public popUpPanel mTipPanel; //声明一个弹出框对象GeoPoint mSelectPoint; //声明一个地理坐标点对象MapView mMapView; //声明一个地图视图对象Context mContext; //活动对象TextView mTipText=null; //声明一个文本对象private static String nearbystr="";private GestureDetector gestureScanner; //声明一个手势监听对象private Geocoder coder; //声明一个逆地理编码对象private String addressName=""; //声明一个地址名称字符串//长按地图某点获取信息的构造函数。public locationSelectOverlay(Activity context,MapView mapView,popUpPanel panel){this.mContext=context; this.mMapView=mapView;this.mTipPanel=panel; gestureScanner = new GestureDetector(this); //声明一个手势监听对象coder = new Geocoder(context); //声明一个逆地理编码对象}//用Handler函数处理传递来的地址信息,显示在文本框中private Handler mGeocoderHandler = new Handler(){public void handleMessage(Message msg){//如果有地址信息的消息发送过来,将文本框中设置为该地址信息if(msg.what == Constants.REOCODER_RESULT){if(mTipText!=null)mTipText.setText(addressName);}//如果显示错误,则文本框中设置报错信息else if(msg.what == Constants.ERROR){Toast.makeText(mContext, "获取地址失败,请重试", Toast.LENGTH_SHORT).show();removeTipPanel();}}};//显示弹出窗口public boolean showTap(GeoPoint p) {View view = mTipPanel.getView();mMapView.removeView(view);//布局参数设置MapView.LayoutParams geoLP = new MapView.LayoutParams(MapView.LayoutParams.WRAP_CONTENT,MapView.LayoutParams.WRAP_CONTENT, p,MapView.LayoutParams.BOTTOM_CENTER);//弹出窗口的文本显示mTipText = (TextView) view.findViewById(R.id.GeoName);mTipText.setText("正在加载地址...");mTipText.setOnClickListener(new OnClickListener() {public void onClick(View v) {}});//在地图视图上添加该弹出窗口视图mMapView.addView(view, geoLP);return false;}//从经纬度坐标点获取对应的地址信息public void getAddressFromServer(final GeoPoint nt,final Handler handler){//声明一个线程new Thread(){public void run(){try {// 逆地理编码getFromLocation()函数获取该点对应的前3个地址信息List<Address> address = coder.getFromLocation((double)nt.getLatitudeE6()/1E6,(double)nt.getLongitudeE6()/1E6, 3);if (address != null) {//获取第一个地址信息Address addres = address.get(0);addressName = "";if(addres.getAdminArea()!=null)addressName+=addres.getAdminArea();if(addres.getSubLocality()!=null)addressName += addres.getSubLocality();if(addres.getFeatureName()!=null)addressName += addres.getFeatureName();addressName += "附近";handler.sendMessage(Message.obtain(handler, Constants.REOCODER_RESULT));}} catch (AMapException e) {// TODO Auto-generated catch blockhandler.sendMessage(Message.obtain(handler, Constants.ERROR));}}}.start(); //线程启动}//移走弹出窗口public void removeTipPanel(){ View view = mTipPanel.getView();mMapView.removeView(view);}//获取手势操作public boolean onTouchEvent(MotionEvent event, MapView mapView) {return gestureScanner.onTouchEvent(event);}@Overridepublic boolean onDown(MotionEvent e) {// TODO Auto-generated method stubreturn false;}@Overridepublic boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) {// TODO Auto-generated method stubreturn false;}//长按地图,弹出提示框,显示该点地址信息@Overridepublic void onLongPress(MotionEvent e) {// TODO Auto-generated method stubint x = (int)e.getX();int y = (int)e.getY();mSelectPoint = mMapView.getProjection().fromPixels(x, y);//调用显示提示框函数showTap(mSelectPoint);//调用从经纬度点获取地址信息函数getAddressFromServer(mSelectPoint,mGeocoderHandler);}@Overridepublic boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,float distanceY) {// TODO Auto-generated method stubreturn false;}复制代码pouUpPanel定义了弹出窗口类public class popUpPanel{private boolean isVisible = false;private MapView mMapView;private View popup;public popUpPanel(Activity paramActivity, MapView paramMapView){this.mMapView = paramMapView;ViewGroup localViewGroup = (ViewGroup)this.mMapView.getParent();//设置弹出的视图是id为R.layout.activity_long_press_map的视图this.popup = paramActivity.getLayoutInflater().inflate(R.layout.activity_long_press_map, localViewGroup, false);…复制代码Constants定义了传递的常量对应的值,如public static finalint REOCODER_RESULT=3000; 表示逆地理编码结果常量,public staticfinal int ERROR=1001; 表示出现错误常量。
wei威

wei威

楼主好:您可以在导航过程中点击时速显示按钮,出现报平安功能将位置分享给好友哦
怎么在地图上标注商铺信息?

2021-09-23 17:28:26 940查看 0回答

如何在地图标注添加指路人地图标注服务中心铺商户位置信息?

[已注销]

[已注销]

软件提供主动添加商户信息的功能,通过工具箱下相关工具,可以将自己的指路人地图标注服务中心铺信息,添加到地图检索中,也可起到宣传及导航的作用。下面介绍软件中如何操作,添加指路人地图标注服务中心铺位置信息。1、首先启动地图软件,点击位于界面左上角的个人头像,即可进入个人界面,在该界面...

2021-09-23 17:28:45 892查看 1回答

怎么在地图通过经纬度来定位并且显示出地图位置

陌上青桑否

陌上青桑否

好好研究下人家的接口嘛,这些东西接口里写的清清楚楚

2021-09-23 17:32:44 449查看 1回答

里面发送位置显示地图怎么是空白?

小夕

小夕

那是你的网速跟不上你的智能手机。

2021-09-23 17:32:47 884查看 2回答

在地图怎么修改我的位置信息?

2021-09-23 17:32:51 482查看 0回答

商家如何修改地图上的位置信息?

2021-09-23 17:33:04 545查看 2回答

怎么样发送地图

2021-09-23 17:45:10 441查看 0回答

地图怎么发送位置信息

伊卡巴

伊卡巴

中,有很多手势操作都很让人又爱又恨。一方面可以更便捷的体现更多功能,提升应用的体验,一方面繁复多变的操作背后有着许多开发技巧和难题。这里分享一个长按地图获取位置信息的手势。为了更明了,先上个展示效果:长按地图某点显示该点地理位置信息功能通过构造一个locationSelectOv...

2021-09-23 17:51:24 471查看 3回答

最新知识

公司地址如何入驻花小猪打车地图标记?指路人地图标注服务中心铺如何入驻花小猪打车地图标记?

小编为您整理美团商家如何入驻,商家入驻教程、商家如何入驻地图、如何入驻地:、养殖营业执照如何入驻地图、家政公司如何入驻美团相关地图标记知识,详情可查看下方正文!

公司地址认领搜狗地图标注多久审核?公司地址认领地图标注多久审核?

小编为您整理我在地图上标注审核认领需要多久、我在地图上标注审核认领需要多久y、我在地图上标注审核认领需要多久i、我在地图上标注审核认领需要多久Y、搜狗地图标注要多久才显示相关地图标记知识,详情可查看下方正文!

门指路人地图标注服务中心如何做花小猪打车地图位置标记?门指路人地图标注服务中心花小猪打车地图位置地址标记?

小编为您整理如何做地图标记、地图如何做标记、so搜街景中如何做标记、360e启花贷款申请通过了是要去到门指路人地图标注服务中心办理手续的吗、哪些软件能实现在地图上标记门指路人地图标注服务中心位置相关地图标记知识,详情可查看下方正文!

门指路人地图标注服务中心地图位置地址标记?门指路人地图标注服务中心苹果地图位置地址标记?

小编为您整理哪些软件能实现在地图上标记门指路人地图标注服务中心位置、门指路人地图标注服务中心地址标注、如何创建门指路人地图标注服务中心定位地址、如何创建门指路人地图标注服务中心定位地址、服装门指路人地图标注服务中心地址标注上地图怎么弄相关地图标记知识,详情可查看下方正文!

凯立德地图位置定位怎么设置自己的指路人地图标注服务中心名?凯立德地图位置定位怎么设置公司地址?

小编为您整理凯立德怎么定位自己的位置啊、手机凯立德地图定位怎么设置往上走、地图位置定位怎么设置自己的指路人地图标注服务中心名、凯立德手机版如何定位自己的位置,求助、凯立德导航怎么设置指路人地图标注服务中心铺招牌相关地图标记知识,详情可查看下方正文!

最新问答
热门专题