通过点击按钮sencha touch更新列表

时间:2011-11-22 15:41:35

标签: sencha-touch

我知道此主题之前已经讨论过,但在更新StoreList后刷新我的列表仍然有问题...

这是我的经纪人:

function clac_distance() {

for (var i=0;i<mydata.length;i++) 
{
    //alert((coor[1].lat-lat)*(Math.PI/180));        
    var R = 6371; // km

    var dLat = (coor[i].lat-lat)*(Math.PI/180);
    var dLon = (coor[i].lng-lng)*(Math.PI/180);

    var lat1 = lat*(Math.PI/180);
    var lat2 = coor[i].lat*(Math.PI/180);

    var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
    Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2); 

    var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 

    mydata[i].distance = (R * c).toFixed(2);


    //alert(mydata[i].distance);
}
    Toolbar.views.listPanel.update();
    Toolbar.views.listPanel.bindStore(ListStore);

}

1 个答案:

答案 0 :(得分:2)

Ext.List侦听它所绑定的商店的datachanged事件,这意味着列表组件将根据商店中的更改自动更新。因此,正确的方法是正确更改商店中的模型实例:

  

ListStore.getById(id).set(key,value);

好事会发生:)