代号一中的存储自动清除

storage automatically get cleared in codename one

您好,我正在使用

在存储中编写数组列表

private void addItemToRecentListStorage1(Hashtable h){ Storage s1 = Storage.getInstance(); ArrayList<Hashtable> a = (ArrayList<Hashtable>)s1.readObject("RecentItems"); ... ... a.add(0,h);//adding on top s1.writeObject("RecentItems", a); }

如果我在添加第一个元素后立即检查 s1,它会在存储层次结构中适当地显示我。

但是在添加第二个元素 (HashTable) 时,它清除了第一个存储的哈希表值,尽管它显示为空白元素。

意思是,我通过 readObject() 在 arraylist 中获取了 1 个元素(HashTable),但是该哈希表的所有 4 个元素都被清除了。这在早些时候是有效的,但现在它从 arraylist 中清除了 HashTable 数据。

所以每次我添加元素时,元素的数量都会增加 1。但是所有以前的哈希表的值都被清除了。

同样的事情在模拟器和设备中发生。

检查控制台中是否有可能由数组中某些对象的序列化失败触发的异常。