var array = ['single', 'multiple']
for (vb = 0, len = obj.length; vb < len; vb++) {
var row = Ti.UI.createTableViewRow({
height: 35,
selectionStyle: 'NONE'
});
row.add(Ti.UI.createLabel(pm.combine($$.labelBrown, {
left: 10,
text: obj[vb]
})));
row.add(Ti.UI.createLabel(pm.combine($$.labelBrown, {
left: 220,
text: 'Information to be displayed'
})));
this.rowData[vb] = row;
}
//上面的代码工作正常,可以打印动态行。
以下代码不起作用......为什么?
var obj= { single: ["one", "sd"], multiple: ["two", "sdsd"] },
for (vb in obj) {
if (obj.hasOwnProperty(vb)) {
for (var i = 0, len = vb.length; i < len; ++i) {
var row = Ti.UI.createTableViewRow({
height: 35,
selectionStyle: 'NONE'
});
row.add(Ti.UI.createLabel(pm.combine($$.labelBrown, {
left: 10,
text: vb
})));
row.add(Ti.UI.createLabel(pm.combine($$.labelBrown, {
left: 220,
text: obj[vb][0]
})));
this.rowData[vb] = row;
}
}
}
我正在尝试基于Array动态创建行。我改为Obj,在其中包含键和值属性......它不起作用......
答案 0 :(得分:1)
最后使用分号:
var obj= { single: ["one", "sd"], multiple: ["two", "sdsd"] };
在本地声明vb
:
for (var vb in obj) {
和
for (var i = 0, len = vb.length; i < len; ++i) {
应该是
for (var i = 0, len = obj[vb].length; i < len; ++i) {