Cocoa アプリから構造にアクセスする方法はありますか? QCView の setvalue:forkey メソッドを使用して整数と文字列を設定できますが、構造体にアクセスしようとするとエラーが発生します。基本的に私がやりたいことは、バイト配列を Quartz コンポジションに渡すことです。
挨拶
マティアス
Cocoa アプリから構造にアクセスする方法はありますか? QCView の setvalue:forkey メソッドを使用して整数と文字列を設定できますが、構造体にアクセスしようとするとエラーが発生します。基本的に私がやりたいことは、バイト配列を Quartz コンポジションに渡すことです。
挨拶
マティアス
コンポジションに構造を提供するには、NSDictionary または NSArray を にフィードし-setValue:forKey:
ます。
たとえば、Xcode の「Quartz Composer Application」テンプレートから始める場合、次のコードを AppController の-changeColorToBlue:
メソッドに追加できます。
[qcView setValue:[NSDictionary dictionaryWithObjectsAndKeys:@"value1",@"key1",@"value2",@"key2",nil] forInputKey:@"Structure"];
また
[qcView setValue:[NSArray arrayWithObjects:@"a",@"b",nil] forInputKey:@"Structure"];
Swift 3.1 を使用してこれを行うことができます。
// for array
qcView.setValue(["Obj1", "Obj2"], forInputKey: "Structure")
// for dictionary
qcView.setValue(["key1":"val1", "key2":"val2"], forInputKey: "Structure")