自定义UI控件 您所在的位置:网站首页 高德地图主界面介绍 自定义UI控件

自定义UI控件

2024-06-26 11:53| 来源: 网络整理| 查看: 265

关于自定义 UI 布局,您还可以参考官方Demo——完全自定义UI导航。

单元素自定义

可以通过AMapNaviViewOptions中如下接口进行单UI元素显示隐藏,只列出部分接口,更多功能请参考AMapNaviViewOptions类。 

Java/** * 设置菜单按钮是否在导航界面显示。 * * @param enabled 菜单按钮是否在导航界面显示。true代表显示,false代表不显示。 */ public void setSettingMenuEnabled(Boolean enabled) /** * 设置是否显示路口放大图(实景图) * * @param isCrossDisplayEnabled true,开启;false,不开启 * @since 5.0.0 */ public void setRealCrossDisplayShow(boolean isCrossDisplayEnabled) /** * 设置是否显示路口放大图(路口模型图) * * @param isCrossDisplayShow true,显示;false,不显示 * @since 1.5.0 */ @Deprecated public void setCrossDisplayShow(boolean isCrossDisplayShow) /** * 设置路况按钮的开启态图片和关闭态图片(开启态与关闭态图片同时设置才生效) * * @param defaultBitmap 开启态图片 * @param pressedBitmap 关闭态图片 */ public void setTrafficBitmap(Bitmap defaultBitmap, Bitmap pressedBitmap) /** * 设置全览按钮的默认图片和点击图片(默认态与点击态图片同时设置才生效) * * @param defaultBitmap 默认的图片 * @param pressedBitmap 点击的图片 */ public void setOverBitmap(Bitmap defaultBitmap, Bitmap pressedBitmap) /** * 设置导航界面是否显示路线全览按钮。 * * @param isShow 设置全览按钮是否在导航界面显示,默认显示。true,显示;false,隐藏。 */ public void setRouteListButtonShow(boolean isShow) 整体UI自定义

如上图所示,我们可以通过AMapNaviViewOptions中如下接口,来一键控制所有 UI 控件的显示和隐藏。 

Java/** * 设置导航界面UI是否显示。 * @param isLayoutVisible true导航界面显示,false导航界面不显示。 */ public void setLayoutVisible(boolean isLayoutVisible)

当不显示UI时,地图锚点也可以通过AMapNaviViewOptions进行自定义,可以根据自己的UI布局来调整比例尺的位置和锁车态时自车图标的默认显示位置,接口如下: 

Java/** * 设置自车位置锁定在屏幕中的位置,(0, 0)为地图左上角,(1, 1)为地图右下角 * @param x 取值范围:0-1 在x轴的位置,百分比 * @param y 取值范围:0-1 在y轴的位置,百分比 * @since 1.5.0 */ public void setPointToCenter(double x, double y)

借助导航提供的View(DriveWayView、ZoomInIntersectionView、TrafficProgressBar、TrafficButtonView、OverviewButtonView等),组装自己的导航界面。

创建View以后在布局中调整好View的位置,调用AMapNaviView相应接口,将View托管给SDK,无需关心View的业务逻辑。

Java/** * 设置用户自定义的车道线 * @param lazyDriveWayView * @since 1.9.0 */ public void setLazyDriveWayView(DriveWayView lazyDriveWayView) /** * 设置用户自定义的路口放大图 * @param zoomInIntersectionView * @since 1.9.0 */ public void setLazyZoomInIntersectionView(ZoomInIntersectionView zoomInIntersectionView) /** * 设置用户自定义的路况按钮 * @param lazyTrafficButtonView * @since 1.9.0 */ public void setLazyTrafficButtonView(TrafficButtonView lazyTrafficButtonView) /** * 设置用户自定义的全览按钮 * @param lazyOverviewButtonView */ public void setLazyOverviewButtonView(OverviewButtonView lazyOverviewButtonView) /** * 设置用户自定义的导航光柱条View * 设置自定义的光柱条view,只需要设置位置和宽、高即可、颜色车标等元素,导航SDK内部会帮助进行更新操作。 * @param lazyTrafficProgressBarView * @since 7.4.0 */ public void setLazyTrafficProgressBarView(TrafficProgressBar lazyTrafficProgressBarView)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有