我正在开发Android APP。在这个应用程序中,我有报告窗口。报告窗口将包含具有字段名称,金额和日期的表。这些数据将来自数据库。所以在while循环中我创建了标签和tableViewRow。但它不起作用并给出错误。
这是我使用的代码:
var rows = conn.execute('SELECT * FROM entries WHERE 1 order by dt desc ');
var i = 0;
var k = 0;
var l = 0;
var j = 1;
while (rows.isValidRow())
{
var repLabel[i] = Titanium.UI.createLabel({
text:rows.fieldByName( 'name' ),
left:10,
textAlign:'center',
font:{ fontSize:16,fontFamily:'helvetica',fontWeight:'bold' },
color:'#999'
});
var repLabel[k] = Titanium.UI.createLabel({
text:rows.fieldByName( 'amount' ),
left:150,
textAlign:'center',
font:{ fontSize:16,fontFamily:'helvetica',fontWeight:'bold' },
color:'#999'
});
var repLabel[l] = Titanium.UI.createLabel({
text:rows.fieldByName( 'date' ),
left:230,
textAlign:'center',
font:{ fontSize:16,fontFamily:'helvetica',fontWeight:'bold' },
color:'#999'
});
var repRow[i] = Titanium.UI.createTableViewRow({
backgroundColor:'#fff',
});
repRow[i].add( repLabel[i] );
repRow[i].add( repLabel[k] );
repRow[i].add( repLabel[l] );
data[j] = repRow[i];
rows.next();
i++;
j++;
};
答案 0 :(得分:3)
您无法像这样定义var repLabel[i]
。您必须首先定义数组,例如var repLabel = []
,然后通过repLabel[i]
访问它而不使用var