Titanium TableView行列

时间:2013-12-20 02:04:46

标签: uitableview titanium

我有以下事情要做:

  • 创建一个包含2列的TableView
  • 当我点击第一列时,应删除该行
  • 当我点击第二列时,应显示相关产品

我在TableView上放了一个eventListener,工作正常。不幸的是,我不知道如何将第1列事件与第2列事件分开。有什么想法吗?

以下是源代码:

var viewResults = Titanium.UI.createView({
  ...
});
...
for (rowId in rows) {
  var tableRow = Titanium.UI.createTableViewRow();
  var rowDelete = Titanium.UI.createView({
    ...
  });
  tableRow.add(rowDelete);
  var rowProduct = Titanium.UI.createView({
    ...
  });
  tableRow.add(rowProduct);
  tblData.push(tableRow);
}
tblResults.setData(tblData);
... 
tblResults.addEventListener('click', function(e){
   if (firstColumn) {
     ...
   }else{
     ...
   }
});

1 个答案:

答案 0 :(得分:1)

您可以为要创建的视图添加自定义属性:

var rowDelete = Titanium.UI.createView({
    action: 'delete',
    ...
});
var rowProduct = Titanium.UI.createView({
    action: 'product',
    ...
});

然后在eventListener中检查event.source属性:

tblResults.addEventListener('click', function(e){
    if (e.source.action === 'product') {
        ...
    } else if (e.source.action === 'delete') {
        ...
    }
});