NSImageView が画像ファイル名からパスを得る ResourcePathTransformer
プロパティリストに画像ファイル名を記述し、それを InterfaceBuilder の NSImageView Value Path とバインディングさせたい。
しかし Value Path はパスしか受け付けないため、画像ファイル名をパスに変換する ResourcePathTransformer を作って対処します。
// ResourcePathTransformer.h #import <Cocoa/Cocoa.h> @interface ResourcePathTransformer : NSValueTransformer { } @end
// ResourcePathTransformer.m #import "ResourcePathTransformer.h" @implementation ResourcePathTransformer - (id)transformedValue:(id)value { if (value) { return [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:value]; } return value; } @end
これによりファイル名 @"point.png" がパス @"---/Resources/point.png" に自動変換されます。
- 作者: Aaron Hillegass,アーロンヒレガス,村上雅章
- 出版社/メーカー: ピアソン桐原
- 発売日: 2009/11/01
- メディア: 単行本
- 購入: 4人 クリック: 110回
- この商品を含むブログ (16件) を見る