このようなマクロと定義を作成しました:
#define CustomImageOptions NSDictionary
typedef NS_ENUM(NSInteger, CustomImageOption) {
CustomImageOptionResize, // CGSize
CustomImageOptionQuality, // CGFloat
CustomImageOptionType // NSString (JPEG or PNG)
};
私はこのような方法を持っています:
- (UIImage*)imageModifiedWithOptions:(CustomImageOptions*)options;
オプションの辞書を次のように渡したい場合 (疑似コード):
[self imageModifiedWithOptions:@{CustomImageOptionResize: CGSizeMake(10, 20), CustomImageQuality: 0.9}];
おそらく、私のマクロが NSDictionary のキーとして列挙できないタイプ NSInteger であるため、コンパイルされません。
これを実装して、オプションの NSDictionary をメソッドに渡すにはどうすればよいですか?