遵循文档here
我有自己的带有JSON数据的Web服务,仅用于测试目的here
Ti.API.info('收到的文字:'+ this.responseText);在控制台中显示JSON,但是当我尝试在表格中显示时,我得到了未定义的内容?
文档示例使用json.figters.length ---我使用了json.places.length,因为它是我的Web应用程序上数组列表中的名称。
var win = Ti.UI.createWindow();
var table = Ti.UI.createTableView();
var tableData = [];
var json, places, place, i, row, countryLabel, capitalLabel;
var xhr = Ti.Network.createHTTPClient({
onload : function(){
Ti.API.info('Received text: ' + this.responseText);
json = JSON.parse(this.responseText);
for (i=0; i < json.places.length; i++)
{
place = json.places[i];
row = Ti.UI.createTableViewRow({
height: '60dp'
});
countryLabel = Ti.UI.createLabel({
text: place.country,
font:{
fontSize:'24dp'
},
height: 'auto',
left: '10dp',
top: '5dp',
color: '#000',
touchEnabled:false
});
capitalLabel = Ti.UI.createLabel({
text:'"' + place.captial + '"',
font:{
fontSize:'16dp'
},
height: 'auto',
left: '15dp',
top: '5dp',
color: '#000',
touchEnabled:false
});
row.add(countryLabel);
row.add(capitalLabel);
tableData.push(row);
}//end for
table.setData(tableData);
},
onerror: function() {
Ti.API.info('error, HTTP status = ' + this.status);
alert('Error Reading Data');
},
timeout:5000
});
xhr.open("GET", "http://130.206.127.43:8080/Test");
xhr.send();
win.add(table);
win.open();
答案 0 :(得分:0)
你将2个标签推入一行,但是一行没有包装器视图。
尝试这样的事情:
var rowView Ti.UI.createView({height: 60, layout: 'horizontal'});
rowView.add(countryLabel);
rowView.add(capitalLabel);
row.add(rowView);
tableData.push(row);