Não é possível adicionar à janela atual no Appcelerator de titânio. Obtenha erro de tipo

StackOverflow https://stackoverflow.com/questions/3866840

Pergunta

Comecei a aprender titânio para celular usando o Android. Segui todas as etapas de instalação e consegui o script do Hello World para encontrar apenas no emulador do Android. O problema é que estou tentando usar o código de exemplo para ver como tudo funciona. O código de exemplo que estou tendo problemas atualmente é:

    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);

Quando eu corro isso no emulador, recebo o seguinte erro:

TypeError: não é possível chamar o método de "add" de nulo.

O que estou fazendo errado?

Foi útil?

Solução

Eu penso em Ti.Map.createView(), você sente falta do annotations parâmetro. O código completo de criar um mapView deve assim:

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);

Vamos tentar isso e me avise se funcionar :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top