0

我是 Titanium Properties API 的新手。使用 setObject() 方法时出现奇怪的错误。以下是我的代码。

Titanium.App.Properties.setObject(view.idAttr, view);

其中 view.idAttr 是充当此属性的键的字符串,而 view 是 View 类型的对象。调用上述方法后,我收到以下消息。

2012-09-14 17:47:25.947 SumMeUp[14033:4a03] *** -[NSUserDefaults setObject:forKey:]: Attempt to insert non-property value '[object TiUIView]' of class 'TiUIViewProxy'.  Note that dictionaries and arrays in property lists must also contain only property values.

我无法理解这种行为。如果有人知道解决方法,请回复。

谢谢

4

1 回答 1

2

setObject()仅适用于对象,不适用于视图。

对象是你自己用 JavaScript 编写的东西。

即使可以,将其存储在属性中也是应用程序的不良行为。请记住,该属性是跨会话存储的。因此,如果您想要存储某些内容,请将数据存储在那里以便稍后再次生成视图,而不是视图本身。还可以节省很多内存!

于 2012-09-14T15:00:36.370 回答