辞書のプロパティを 'a.b.c'のようなプロパティに渡してプロパティ値を設定する必要があります。私はNSObject派生クラスの型の 'a'という名前のプロパティを持つルートオブジェクト 'obj'(NSObject派生)を持っています。そのクラスは、辞書var map = [String: CGFloat]()
である 'b'という名前のプロパティを持ち、 'c'は辞書のキー名です。 obj.setValue(value, forKeyPath: 'a.b.c')
を呼び出すと、辞書のプロパティが存在すると問題なく動作します。それができなければ自動的にそのプロパティを作成したいと思います。方法はありますか?パスからプロパティを作成する方法
-1
A
答えて
0
setValue(_:forKeyPath:)
は辞書方式ではなく、NSObject
メソッドです。
setValue(_:forUndefinedKey:)
を実装し、自分でキーと値のペアを保存します。また、値を取得するためにvalue(forUndefinedKey:)
を実装する必要があります。
+0
辞書は 'a.b.c'のパスにあるオブジェクト 'b'です。私の質問ビットをもっと更新しました –
+0
このような辞書は使用できません。 'setValue(_:forKeyPath:)'を使いたい場合は、 'setValue(_:forUndefinedKey:)'と 'value(forUndefinedKey:)'を実装するラッパーオブジェクトが必要です。このAPIを使用しないでください。 –
関連する問題
- 1. Python:パスを持つクラスからインスタンスを作成する方法
- 2. 絶対パスからJavaFXイメージを作成する方法は?
- 3. クラスであるプロパティからインスタンスを作成する方法は?
- 4. C#.netのプロパティからフィールドを作成する方法
- 5. データベーステーブルからクラスとプロパティを動的に作成する方法
- 6. パスからマスクを作成する
- 7. XNAローディングモデルからパスを作成する
- 8. プロパティでカスタムコントロールを作成する方法
- 9. リストのプロパティを作成する方法
- 10. 複数のBezierPathから複数のパスを作成する方法
- 11. URLに入力されたパスからhtmlファイルを作成する方法
- 12. バネ負荷のJPAクラスを複数のパスから作成する方法は?
- 13. Git:端末から特定のパスにファイルを作成する方法
- 14. CreateProcessから作成されたプロセスの検索パスを設定する方法
- 15. パス値からパスを作成しますか?
- 16. WebAPIコントローラの物理パスから絶対パスを生成する方法
- 17. linq selectから1つの自動数値プロパティを作成する方法
- 18. マシンのプロパティからVM作成時間を取得する方法
- 19. パスのエラーからファイルを作成
- 20. ブースト:最短パスからグラフを作成
- 21. パス名のCSVからナビゲートツリーを作成
- 22. 他のプロパティから選択した値のインデックスを格納するプロパティを作成する方法は?
- 23. Spring-restdocs:パラメータ、パス、レスポンスフィールドコードブロックの作成方法
- 24. URLパスを表示せずにハイパーリンクを作成する方法
- 25. NodeJSにパスを持つファイルオブジェクトを作成する方法は?
- 26. Androidのパスに似たアニメーションのカスタムボタンを作成する方法
- 27. ロケーションファイル(パス)でマルチパートファイルを作成する方法
- 28. Pythonの特定のパスにファイルを作成する方法は?
- 29. リダイレクトURLをトリミングする方法は?パスから別のパスに?
- 30. C#プロパティのリストからオブジェクトリストを作成
'obj'の種類は何ですか? –
辞書はどのように定義されていますか? –
追加例: –