0

我刚开始使用 android 学习用于移动设备的钛。我遵循了所有的安装步骤,并让 hello world 脚本工作,只是在 android 模拟器中找到。问题是我试图使用示例代码来查看它是如何工作的。我目前遇到问题的示例代码是:

    var win = Titanium.UI.currentWindow;

var mapview = Titanium.Map.createView({
    mapType: Titanium.Map.STANDARD_TYPE,
    region:{latitude:33.74511, longitude:-84.38993, latitudeDelta:0.5, longitudeDelta:0.5},
    animate:true,
    regionFit:true,
    userLocation:true
});
win.add(mapview);

当我在模拟器中运行它时,我收到以下错误:

TypeError:无法调用 null 的方法“添加”。

我究竟做错了什么?

4

1 回答 1

2

我认为Ti.Map.createView(),你错过了annotations参数。创建 MapView 的完整代码必须是这样的:

var win = Titanium.UI.currentWindow;
var anno1 = Titanium.Map.createAnnotation({
    latitude:33.74, longitude:84.38,
    title:'POI 1',
    pincolor:Ti.Map.ANNOTATION_RED
});
var anno2 = Titanium.Map.createAnnotation({
    latitude:33.75, longitude:84.39,
    title:'POI 2',
    pincolor:Ti.Map.ANNOTATION_RED
});
var mapview = Titanium.Map.createView({
    mapType: Titanium.Map.STANDARD_TYPE,
    region:{latitude:33.74511, longitude:-84.38993, latitudeDelta:0.5, longitudeDelta:0.5},
    animate:true,
    regionFit:true,
    userLocation:true,
    annotations:[anno1, anno2]
});
win.add(mapview);

试试这个,让我知道它是否有效:)

于 2010-10-07T15:27:20.060 回答