Acording to this demonstration ArcGIS API for JavaScript Sandbox I try to set labels to Feature Layer. My Feature Layer is created by Feature Collection and when I have exactly the same code as in demonstration no labels are shown.
Can anyone help please?
Here is my code:
var map = this.map;
map.showLabels = true;
var devFeatureCollection = {
"layerDefinition": null,
"featureSet":{
"features":[],
"geometryType": "esriGeometryPoint"
}
};
devFeatureCollection.layerDefinition = {
"geometryType": "esriGeometryPoint",
"objectIdField": "ObjectID",
"spatialReference": {
"wkid": 102067,
"latestWkid": 102067
},
"drawingInfo": {
"renderer": {
"type": "simple",
"symbol": {
"type": "esriPMS",
"url": "images/trafLight.png",
"contentType": "image/png",
"width": 10,
"height": 20
}
}
},
"fields": [{
"name": "ObjectID",
"alias": "ObjectID",
"type": "esriFieldTypeOID"
}, {
"name": "serialno",
"alias": "ID zařízení",
"type": "esriFieldTypeString"
}, {
"name": "street1",
"alias": "Ulice_1",
"type": "esriFieldTypeString"
}, {
"name": "street2",
"alias": "Ulice_2",
"type": "esriFieldTypeString"
}]
};
devFeatureLayer = new FeatureLayer(devFeatureCollection, {
id: 'devStates',
infoTemplate: devPopupTemplate,
outFields: ["*"]
});
var devLabel = new TextSymbol()
devLabel.font.setSize("14pt");
devLabel.font.setFamily("arial");
var json = {
"labelExpressionInfo": {"value": "{serialno}"}
};
var labelClass = new LabelClass(json);
labelClass.symbol = devLabel;
devFeatureLayer.setLabelingInfo(labelClass);