Android 地图开发,高德地图,两点画线或者多点 画线
最近用高德地图做一些绘制行走路线的功能,帖子写的都好模糊,
(资料图片)
我这里整个最简单的
先上效果图,只看地图部分即可,地图高度宽度可以修改的
下面是具体代码
首先还是最简单的布局文件
<
android:layout_marginTop="10dp"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="150dp"/>
然后是代码部分
--------我是分割线----------------------------------------------
//声明一个外部变量
MapView mapView;
/**
* protected void onCreate(Bundle savedInstanceState) {
* 参数就是这玩意 savedInstanceState
*然后直接调用这个方法就好
*/
private void setMap(Bundle savedInstanceState){
mapView = (MapView) findViewById();
//必须
(savedInstanceState);
AMap aMap = ();
List<LatLng> latLngList = getLatLngList();
//移动相机到中心点,第二个参数是相机缩放倍数
(((0), 18));
//画线 具体参数可以在这里修改
(new PolylineOptions()
.addAll(latLngList)//添加一个LatLng列表
.color()//线条的颜色
.width(10f)//线条的宽度
.setDottedLine(false)//点线?虚线?
);
}
//这个是设置具体的路径参数,可以设置复数多个
private List<LatLng> getLatLngList() {
List<LatLng> latLngList = new ArrayList<>();
/*
*/ 有几个点 线就会跟着绕 2个也行 M个也行
*/
(new LatLng(, ));
(new LatLng(, ));
(new LatLng(, ));
return latLngList;
}
--------我是分割线----------------------------------------------
这里附上一个拓展方法就是设置一个 提示语 没需要可以无视这个
用法是直接靠过去,把aMap对应上就好
//带自定义文本的Marker标记
Bitmap bitmap = setCanvasTitle("起始位置");//设置提示语的图片
(new MarkerOptions().icon((bitmap))
.position((0)));
Bitmap bitmap1 = setCanvasTitle( "结束位置");//设置提示语的图片
(new MarkerOptions().icon((bitmap1))
.position((2)));
/**
* 设置坐标的提示语 和小图标 bitmap
*/
private Bitmap setCanvasTitle(String s) {
Bitmap bitmap = (_BLUE).getBitmap();
bitmap = imageScale(bitmap, 150, 150);//调整图片的大小
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint();
();
();
(25f);
(_BOLD);
(s, () / 2, () / 2, paint);
return bitmap;
}