2013-07-10 53 views
0

我有一个包含我的数据的商店。有一个名为“IsSelected”的字段标记了每条记录的状态。商店有一个组功能,返回“名称”字段的第一个字符。Sencha touch 2:在商店更新数据时自动排序

我展示我在ListView数据如下图像 enter image description here

当行的用户点击,我更新如下“IsSelected”字段的值:

onListItemTap: function(dataview, index, target, record, e, eOpts) { 
    var isSelected = record.getData().IsSelected; 
    if (isSelected === true) { 
     record.set("IsSelected", false); 
    } else { 
     record.set("IsSelected", true); 
    } 
} 

但当值“ IsSelected“已更新,列表将重新加载,数据将自动按此字段排序。请参阅下图: enter image description here

任何人都可以帮助我解决这个问题吗?请告诉我原因以及如何解决。谢谢。

回答

1

Auto Load

这将迫使你用Load方法,让您的店铺运行。

祝你好运,布拉德

+0

非常感谢你bwags,但我不明白你的意思。你能告诉我更多细节吗? –

+0

添加自动加载将使您可以控制商店何时加载。作为'true',当它包含的数据被标记为肮脏时,商店将加载。作为'false',商店只会在你调用'load()'时加载。第二个想法,但是你的问题可以通过添加一个[sort](http://docs.sencha.com/touch/2.2.1/#!/api/Ext.data.Store-cfg-sorters)配置来解决商店并让它在每个负载上排序。 – bwags