其他自定义能力 最后更新时间: 2021年01月22日
UI界面定制是指:AMapNaviDriveView、AMapNaviWalkView和AMapNaviRideView中的图面元素,以及界面中的UI控件都支持定制化修改,以便您做出独一无二,符合您业务需求和App风格的导航界面。以下,以AMapNaviDriveView为例。
智能比例尺
如上图,所谓的智能比例尺,就是锁车模式下为了在图面上提前看见下一个导航动作,根据您的自车位置自动缩放地图的一种效果。开启了智能比例尺,我们就能够以一个合适的缩放级别在图面上看见白色的转向箭头,比如当看见了左拐箭头,我们就有了预判,需要提前变道。您可以调用如下接口进行设置,支持导航中动态切换。
///锁车模式下是否为了预见下一导航动作自动缩放地图,默认为NO. since 6.2.0
@property (nonatomic, assign) BOOL autoZoomMapLevel;
日夜模式
上图为黑夜模式,AMapNaviDriveView的日夜模式分为4种,白天模式、黑夜模式、根据日出日落时间自动切换白天黑夜、自定义地图样式(还需调用-setCustomMapStyleOptions: 接口传入MAMapCustomStyleOptions)。您可以调用如下接口进行设置,支持导航中动态切换。
///导航界面中的地图样式类型 since 6.7.0
typedef NS_ENUM(NSInteger, AMapNaviViewMapModeType)
{
AMapNaviViewMapModeTypeDay = 0, ///< 白天模式
AMapNaviViewMapModeTypeNight = 1, ///< 黑夜模式
AMapNaviViewMapModeTypeDayNightAuto = 2, ///< 根据日出日落时间自动切换白天黑夜
AMapNaviViewMapModeTypeCustom = 3, ///< 自定义地图样式 (还需传入 MAMapCustomStyleOptions )
};
///导航界面日夜模式类型, 默认为 AMapNaviViewMapModeTypeDay(白天模式) since 6.7.0
@property (nonatomic, assign) AMapNaviViewMapModeType mapViewModeType;
这里需要注意的是,自定义地图样式之所以要和日夜模式放在同一个枚举值里,就是想强调他们是互斥的,如果您使用了自定义地图样式,其他三种模式将是失效的,您需要自行计算用户所在地方的日出日落时间,传入不同的MAMapCustomStyleOptions来实现白天黑夜效果。
自动锁车
所谓的自动锁车,就是当用户触碰了图面,让显示模式变成普通态,或者点击了全览按钮,让显示模式变成全览态,过一段时间后,显示模式是否需要再自动变成锁车态。关于显示模式,可以参考文章显示模式与跟随模式-显示模式。您可以调用如下接口进行设置,支持导航中动态切换。
///当显示模式为非锁车模式时,是否在7秒后自动设置为锁车模式,默认为NO. since 5.3.0
@property (nonatomic, assign) BOOL autoSwitchShowModeToCarPositionLocked;