我有以下代码在我的.js上创建一个新的注释:
//Create annotation
var new_annotation = Titanium.Map.createAnnotation({
latitude:10,
longitude:30,
title:"Title",
pincolor:Titanium.Map.ANNOTATION_RED,
customdata:"My custom data",
animate:true,
rightButton: Titanium.UI.iPhone.SystemButton.DISCLOSURE,
myid:1
});
$.mapview.addAnnotation(new_annotation);
点击功能可以使用标题,纬度和经度等所有信息:
function doClick(evt){
alert("title: " + evt.title);
alert("customdata: " + evt.customdata);
};
然而,customdata是“未定义的”。
如何从Titanium MapView注释中保存和检索数据?为什么数据是“未定义的”?
答案 0 :(得分:1)
您正在将您的customdata
对象添加到注释本身,即传递到evt
事件侦听器is defined in the DOCS的click
对象,因为它明确地传递了注释的标题,所以当然你可以重新审视它,但要获得customdata
你必须这样做:
function doClick(evt){
alert("title: " + evt.title);
// Get the annotation, then get the custom data attached to it
alert("customdata: " + evt.annotation.customdata);
};