sencha touch list更新单行数据
http://www.cnblogs.com/mlzs/p/3317570.html
如此章所说,点击按钮需要实时更新视图
操作代码如下:
1 onTasteUp: function (list, record, item, index, btn) { 2 var visibility = 'visible', 3 value = +btn.getAttribute("value"), 4 data = record.data, 5 taste = data.taste + value, 6 eateryBar = this.getEateryBar(), 7 price = value * data.price, 8 isShop = true; 9 if (taste == 0) { 10 visibility = 'hidden'; 11 isShop = false; 12 } 13 data.taste = taste; 14 data.visibility = visibility; 15 data.isShop = isShop; 16 item.setData(data); 17 eateryBar.upDateView(price, value); 18 }
关键代码为:item.setData(data);
因为所以的展示控件都是基于Container控件的,所以setData方法适用范围很广
经过测试,得出以下结论:
1.不能使用item.setRecord(record);此方法无法更新视图
2.不能使用record.set({taste:taste});查看源码会发现此方法会刷新整个视图,效率及其底下。