共享单车轨迹界面如:小黄车和摩拜单车界面布局采用的是高德地图,并且每个轨迹线段都是有对应的地图纹理
首先,我们在高德地图开发环境下进行地图线段纹理开发需要明确几个前提:

  • 线段添加纹理根据官方文档是在PolylienOptions 类中进行设置
  • PolylienOptions 类所在的包是:com.amap.api.maps.model.PolylineOptions;
  • 对于com.amap.api.maps2d.AMap所对应的AMap中也有一个PolylienOptions 类,但是该类不能进行纹理的设置

官方文档说明如下:

名称 说明
setCustomTexture(BitmapDescriptor customTexture) 设置线段的纹理,建议纹理资源长宽均为2的n次方
setCustomTextureIndex(java.util.List custemTextureIndexs) 设置分段纹理index数组
setCustomTextureList(java.util.List customTextureList) 设置分段纹理list
setDottedLine(boolean isDottedLine) 设置是否画虚线,默认为false,画实线
setUseTexture(boolean useTexture) 是否使用纹理贴图
useGradient(boolean useGradient) 设置是否使用渐变色
visible(boolean isVisible) 设置线段的可见性
width(float width) 设置线段的宽度,单位像素
zIndex(float zIndex) 设置线段Z轴的值

首先,你需要你自己的纹理图。如下三个纹理图片

代码开发:
将纹理图片放置到Asset文件目录下面
工具类代码如下:

 /*** Created by adminZPH on 2017/4/14.* 设置线条中的纹理的方法* @return PolylineOptions* */public static PolylineOptions GetPolylineOptions(){//添加纹理图片List<BitmapDescriptor> textureList = new ArrayList<BitmapDescriptor>();BitmapDescriptor mRedTexture = BitmapDescriptorFactory.fromAsset("icon_road_red_arrow.png");BitmapDescriptor mBlueTexture = BitmapDescriptorFactory.fromAsset("icon_road_blue_arrow.png");BitmapDescriptor mGreenTexture = BitmapDescriptorFactory.fromAsset("icon_road_green_arrow.png");textureList.add(mRedTexture);textureList.add(mBlueTexture);textureList.add(mGreenTexture);// 添加纹理图片对应的顺序List<Integer> textureIndexs = new ArrayList<Integer>();textureIndexs.add(0);textureIndexs.add(1);textureIndexs.add(2);PolylineOptions polylienOptions=new PolylineOptions();polylienOptions.setCustomTextureList(textureList);polylienOptions.setCustomTextureIndex(textureIndexs);polylienOptions.setUseTexture(true);polylienOptions.width(7.0f);return polylienOptions;}

上面方法用来返回一个polylienOptions,如果你有N个经纬度点的话,需要在地图上两两连线添加纹理显示,就可直接使用
比如:

   for (int i =0; i < a.size() - 1; ++i) {amap.addPolyline(GetPolylineOptions()).add(new LatLng(a.get(i).getLatLonPoint().getLatitude(), a.get(i).getLatLonPoint().getLongitude()),new LatLng(a.get(i + 1).getLatLonPoint().getLatitude(), a.get(i + 1).getLatLonPoint().getLongitude()));}

通过上述就可以实现,具体业务逻辑具体编写。
这片海 2017.04.14 13:06

Android 高德地图添加线段纹理相关推荐

  1. Android高德地图添加点连点画线

    说明: 最近碰到一个需求,需要在高德地图上选择航点,然后连线,最后形成一个路线图,把点的信息,用json文件的格式存储起来 效果图: 1.先集成高德地图  app目录下的builder文件,直接添加高 ...

  2. android 高德地图动画,Android 高德地图上自定义动画

    高德提供了SmoothMoveMarkerAPI的调用,用于平滑移动,只需要给point点就好了 还有animation的封装,对 RotateAnimation,AlphaAnimation,Sca ...

  3. Android 高德地图中路线规划绘制界面线路

    Android 高德地图中路线规划绘制界面线路 下面代码是根据很多的经纬度的点,绘制出直线的线路.比较死板 /*** 绘制景区的路线*/private void setRouteInfo(List&l ...

  4. Android高德地图自定义Markers的例子

    下文为各位重点介绍关于Android高德地图自定义Markers的例子,希望这篇文章能够让各位理解到Android高德地图自定义Markers的方法. 之前的博客里说了地图的嵌入和定位,今天就说说在地 ...

  5. Android 高德地图(带有定位和点击显示经度纬度)

    Android高德地图测试,如下: 1.Android高德地图Demo地址下载:       下载android高德地图Demo 1.2 Android定位SDK 一键下载 1.3 下载好的文件zip ...

  6. Android 高德地图给指定坐标显示图片,以及聚合显示

    官网实例请点击:Android 高德地图聚合官网 下面是一个案例: 效果图: MainActivity public class MainActivity extends AppCompatActiv ...

  7. Android高德地图自定义Mark并实现聚合效果

    Android高德地图自定义Mark并实现聚合效果 起因:公司本来项目里面用到了高德地图,然后最近老板看见别人的APP里面有个聚合的这个功能,老板:"这个效果能不能实现,我也要!" ...

  8. android 高德地图定位获取经纬度

    android 高德地图定位获取经纬度 之前开发定位都是集成百度的,领导说要用高德的,没办法干吧,官方的文档太详细了看着真累. 我们得先去官网注册开发者账号,创建应用,填写自己项目的包名和SHA1, ...

  9. android 高德地图SDK报 KEY鉴权失败

    android 高德地图SDK报 KEY鉴权失败. 一般在项目被转移,或项目使用的SDK被其他项目使用时,会发生这种情况! 解决办法 进入高德地图api控制台 点应用管理-我的应用-创建应用 - 根据 ...

最新文章

  1. java ec_Java ECKey.setK方法代码示例
  2. springmuvc如何设置jsp的input跳转_如何扩大私域流量?「上线了」跳转小程序来帮你...
  3. ORM 和 JDBC有何不一样
  4. Python网络爬虫与信息提取(三):网络爬虫之实战
  5. Java教程分享:使用Spring框架能带来哪些好处?
  6. springMVC 前台向后台传数组
  7. Copy-On-Write COW机制
  8. 手游传奇刷元宝_传奇手游 平民制霸刀刀爆元宝!
  9. 伦敦帝国学院提出局部特征提取新模式D2D:先描述后检测
  10. python运行程序的时间计算
  11. fiddler拦截response
  12. config.o:文件无法辨识_HAZOP有哪些局限性,及系统生命周期不同阶段的危险辨识...
  13. 汽车上都有哪些系统的缩写
  14. 典型ARM嵌入式Linux设备启动流程-S3C2440,S5PV210,AM3352x
  15. ACL2021_Lexicon Enhanced Chinese Sequence Labelling Using BERT Adapter
  16. ROS下里程计辅助2D激光雷达去运动畸变
  17. 一只喵的西行记-12 灯火阑珊处那娃在哭
  18. Python-高级:多任务-协程 案例:图片下载器
  19. ksps什么单位_IEEE754扩充精度算法异步转换速率的550KSPS
  20. 嵌入式uboot移植之三星官方uboot开始移植

热门文章

  1. 无域控AlwaysOn实战教学 (一)
  2. sws_scale()
  3. 2020/01/03 基于sharedLibrary进行CICD流程的优化(一)
  4. JavaScript 教程「3」:数据类型
  5. 深度估计(Depth Estimation)
  6. 音量(DB)为什么都是负值
  7. 【目标跟踪】|Exemplar Transformers
  8. 《2018中国直销银行白皮书》发布 银行面临“颠覆式创新”
  9. 设计美学 第二章 设计的媒介力量
  10. Translatium for Mac(Google在线翻译工具)的使用说明