如何检测特定图像上的事件点击

时间:2017-12-27 16:44:45

标签: android nativescript gesture nativescript-telerik-ui

var gestures = require("ui/gestures");

for (var i = 0; i < images.length; i++) {
      imgArray[i] = new imageModule.Image();
  imgArray[i].id = "img";
  imgArray[i].width = w / 6;
  imgArray[i].height = h / 7;
  imgArray[i].src = images[i];
  imgArray[i].stretch = "fill";
  wrap_layout.addChild(imgArray[i]);
  imgArray[i].on(gestures.GestureTypes.tap, function (args) {
    console.log("tap"+"|"+i);
  });

这个我的循环向nativescript上的WrapLayout添加图像数组很有效我的问题是我试图为每个图像实现点击手势是工作但是没有特定的Image索引任何想法如何解决它

1 个答案:

答案 0 :(得分:0)

var onTap = function (args) {
console.log('tap');
 };
 images = raw_data.split("\n");
        for (i = 0; i < images.length; i++) {
          var m = re.exec(images[i]);
          idArray[i] = m[0];
          images[i] = images[i].replace(idArray[i], "");
          imgArray[i] = new imageModule.Image();
          imgArray[i].src = images[i];
          imgArray[i].stretch = "fill";
          stackArray[i] = new StackLayout();
          imgArray[i].id = "img";
          imgArray[i].width = sw;
          imgArray[i].height = sh;
          stackArray[i].id = "stack";
          stackArray[i].width = sw;
          stackArray[i].height = sh;
          stackArray[i].num = i;
          stackArray[i].addChild(imgArray[i]);
          wrap_layout.addChild(stackArray[i]);
          stackArray[i].on(buttonModule.Button.tapEvent, onTap, this);
        }

这对我有用