gpt4 book ai didi

ios - IOS 中 mapView 上的单击事件在 titanium studio 中不起作用

转载 作者:行者123 更新时间:2023-11-28 21:27:28 26 4
gpt4 key购买 nike

我正在创建一个带有一些注释的应用程序。现在我需要处理点击服装的注释。我试图将点击事件放在每个注释或 mapView 上,但没有接缝起作用。我试过这个:

这就是我创建服装注释的方式:

var pins = [];

var imgTemp = Ti.UI.createImageView({
image : "/images/p_" + keys[j] + ".png"
});

var alturaImg = imgTemp.toBlob().height;
var larguraImg = imgTemp.toBlob().width;
var alturaImgNova = deviceHeight * 0.04;
var fator = alturaImg / alturaImgNova;
var larguraImgNova = larguraImg / fator;

var annottion = MapModule.createAnnotation({
latitude : pontos2[keys[j]][i].Lat,
longitude : pontos2[keys[j]][i].Long,
pincolor : MapModule.ANNOTATION_VIOLET,
customView : Ti.UI.createImageView({
height : alturaImgNova,
width : larguraImgNova,
image : "/images/p_" + keys[j] + ".png"
}),
draggable : false,
id : id
});

pins.push(pins);
mapview.addAnnotations(pins);

点击注释:

MyAnnotation.addEventListener('click', function() {
alert("click");
});

点击 map 查看:

mapview.addEventListener('click', function() {
alert("click");
});

在 android 上,mapView 单击事件工作正常。问题出在IOS上。

最佳答案

对于 IOS,您必须将 canShowCallout 设置为 false。

创建注释:

var annotation = MapModule.createAnnotation({
latitude : annotations[i].latitude,
longitude : annotations[i].longitude,
myid : i
});

if (OS_IOS) {
annotation.image = "/images/icn_map_location.png";
annotation.canShowCallout = false;
} else {
annotation.customView = Ti.UI.createLabel({
width : 48,
height : 58,
backgroundImage : "/images/icn_map_location.png"
});
}

点击 map 查看:

mapView.addEventListener("click", myFunction);

关于ios - IOS 中 mapView 上的单击事件在 titanium studio 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37529558/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com