首先,我们可以先自定义Marker:
package com.comingnow.msd.ui; import android.content.Context; import android.graphics.Point; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.view.animation.Animation; import android.view.animation.ScaleAnimation; import android.widget.RelativeLayout; import android.widget.TextView; import com.amap.api.maps.AMap; import com.amap.api.maps.Projection; import com.amap.api.maps.model.LatLng; import com.comingnow.msd.R; import com.comingnow.msd.activity.MainActivity; import com.comingnow.msd.cmd.resp.metadata.CmdRespMetadata_shopinfo; import com.comingnow.msd.global.MSDApplication; import com.gearsoft.sdk.utils.MyLoger; /** * 自定义marker * * 将地图上的点转换为屏幕上的点 * * Created by zhanglianglin on 2016/2/17. */ public class MyMarker { private Context mContext; //x点,y点 private int mMarkerX,mMarderY; //布局 private View markerView; private RelativeLayout mapView; //marker数据来源 private CmdRespMetadata_shopinfo shopinfo; private AMap aMap; private OnClickMyMarker listenter; /** * 构造方法,传入必须的参数 * * @param mapView 这是地图的父View * * @param aMap * */ public MyMarker (Context mContext,CmdRespMetadata_shopinfo shopinfo, AMap aMap,RelativeLayout mapView){ this.mContext = mContext; this.shopinfo = shopinfo; this.aMap = aMap; this.mapView = mapView; getScreenPix(aMap); } /** * 将点传进来,转化为屏幕上的点 * * */ pub