FeatureLayer设置的标注不显示

用户调用FeatureLayer,也设置标注的TextSymbol,但是依然不显示
已邀请:

邵明升

赞同来自:

【解决办法】:
用户使用的4.6的API,Layer 是 FeatureLayer。

当前版本 MapView 中的 label 仅支持 MapImageLayer,而用户使用的是 FeatureLayer。调用代码应该如下:
var textSymbol = {
type: text,
color: #0a162c,
font: {
size: 14,
family: 微软雅黑
}
};
var labelClass = new LabelClass({
symbol: textSymbol,
labelExpression: [name],
labelPlacement:above-right
});
var layer = new MapImageLayer ({
url: https://sms.esrichina.com/serv ... ture/首都和省级行政中心4m/MapServer/,
sublayers: [{
id: 0,
labelingInfo: [labelClass],
labelsVisible: true //显示标注
}]
});


补充:
3.xAPI:在 map 中添加 showLabels : true
map = new Map(map, {
showLabels : true
});
4.xAPI:在 layer 中添加 labelsVisible: true
4.7之前的 MapView 中的 label 仅支持 MapImageLayer,通过 labelExpression 定义显示内容

SceneView 中的 label 支持MapImageLayer和FeatureLayer,可以通过 labelExpression 或 labelExpressionInfo 定义显示内容

要回复问题请先登录注册