0

TitaniumPropertiesAPIは初めてです。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 に答える