我正在使用1.5.1和1.6.0在我的OS X上测试我的应用程序。
我正在尝试更新此数组中的一些值:
var myTab = [
{title:'foo1',value:'bar1'},
{title:'foo2',value:'bar2'}
];如果我更新这个数组中的值字段,它不会这样做(这是不正常的):
Titanium.API.info('Before :' + myTab[0].value);
myTab[0].value = 'updated!';
Titanium.API.info('After :' + myTab[0].value);它显示'bar1‘而不是'updated!’。接下来,我尝试将选项卡作为属性列表:
Titanium.App.Properties.setList('propTab',myTab);然后,我试着做同样的事情:
Titanium.API.info('Before :' + Titanium.App.Properties.getList('propTab')[0].value);
Titanium.App.Properties.getList('propTab')[0].value = 'updated!';
Titanium.API.info('After :' + Titanium.App.Properties.getList('propTab')[0].value[0].value);相同的结果:它显示'bar1‘而不是'updated!’。
有没有其他的解决方案?
谢谢,
问候
发布于 2011-02-10 02:14:39
我以前也遇到过这种行为。虽然我从未查明原因,但我找到了一种解决方法:您需要将myTab[0]设置为值,而不是将myTab[0].value设置为值。因此,如下所示:
myTab[0] = {title: myTab[0].title, value: "updated!"};为什么我不知道..。我也许应该弄清楚。
发布于 2013-12-18 17:49:15
你需要把它作为一个数组元素来使用,然后它就可以工作了。例如,在您的情况下,您可以修改为愚蠢的
myTab[0]['value'] = 'updated!';https://stackoverflow.com/questions/4942798
复制相似问题