我需要不断更新我的ListView,但出于某种原因,我还无法识别,我没有成功这么做。Nativescript ListView刷新
dash.xml
<ListView id="pilotList" items="{{ activeList }}">
<ListView.itemTemplate>
<GridLayout columns="*,*2,*">
<Label text="{{ listNick }}" col="1" class="listNick" />
<Label text="{{ listDistance }}" col="2" class="listDistance" />
</GridLayout>
</ListView.itemTemplate>
</ListView>
dash.js(我在这里只提取相关部分):
var observable = require("data/observable");
var pageModule = require("ui/page");
var activePilots = []; //this is the array with the contents
exports.pageLoaded = function(args) {
page = args.object;
pilotList = page.getViewById("pilotList");
page.bindingContext = { activeList:activePilots };
}
后来在代码(每次位置改变),我更新activePilots数组:
activePilots.push({listNick:fbMi, listDistance:result.value[uid]["uid"] })
到目前为止,一切正常,因为我可以看到与console.log(JSON.stringify(activePilots)) 。
但是,ListView控件从未更新,甚至迫使我在做什么错
pilotList.refresh();
任何想法? 谢谢, 亚历克斯
非常感谢!它正在工作! –