如何添加事件侦听器以便在窗口/选项卡处于焦点时更新表格?我当前的代码适用于 webViews,但我不确定如何将它应用到 tableViews。win.addEventListener('focus',function(e){webview.reload();});
问问题
1638 次
3 回答
3
创建一个重新加载表数据并调用的方法table.setData(_tableData)
于 2012-07-18T23:09:54.637 回答
0
假设你有你的表,定义为:
var tableData = [{title: 'Elephants'}, {title: 'Donkeys'}, {title: 'Falcons'}]
var tableView = Ti.UI.createTableView({
data: tableData
})
win.add(tableView)
还有一个名为的数组newData
,其中包含您要放置在表中的新信息。您是否尝试过执行以下操作?
win.addEventListener('focus', function(e){
tableView.data = newData
})
如果您需要更多信息或者这不符合您的需求,请告诉我。
于 2012-07-18T23:09:58.913 回答
0
是的,您可以在当前代码中执行。
win.addEventListener('focus', function(e){
tableView.setData(newData); // this is always add update Array
});
例如
var win = Ti.UI.createWindow();
var data = [
{title:"Row 1"},
{title:"Row 2"},
{title:"Row 3"}
];
var tableView = Ti.UI.createTableView({
data: data
});
win.add(tableView);
win.open();
再试一次
var win = Ti.UI.createWindow();
var data = [
{title:"Row 1"},
{title:"Row 2"},
{title:"Row 3"}
];
var tableView = Ti.UI.createTableView({
data: data
});
data = [
{title:"Row 1"},
{title:"Row 2"},
{title:"Row 3"},
{title:"Row 4"},
{title:"Row 5"},
];
win.addEventListener('focus',function(){
tableView.setData(data);
});
win.add(tableView);
win.open();
于 2012-07-19T13:56:14.383 回答