IKImageBrowserViewでドラッグアンドドロップ操作をサポートしています。ドラッグ&ドロップ先の代理人では、NSFilenamesPboardTypeドロップを受け入れます。変わった部分は、NSOpenPanelを使うときに得られるように、 "file:// localhost/..."の代わりに "/ Users/..."で始まるファイルパス文字列がすべて始まるということです。これらをNSURLに変換してIKImageBrowserViewでイメージを表示すると、「file:// localhost/...」で始まるフルパスしか理解できないため、混乱します。下のスニペットで行ったように、プレフィックスをハックすることができますが、完全なパスを取得するためのプログラマチックな方法があれば疑問に思っていましたか?ドラッグアンドドロップ時にペーストボードから完全なパスを取得できますか?
if ([[pasteboard types] containsObject:NSFilenamesPboardType])
{
NSData* data = [pasteboard dataForType:NSFilenamesPboardType];
if (data)
{
NSString* errorDescription;
NSArray* filenames = [NSPropertyListSerialization
propertyListFromData:data
mutabilityOption:kCFPropertyListImmutable
format:nil
errorDescription:&errorDescription];
for (id filename in filenames)
{
NSURL* url = [NSURL URLWithString:[NSString stringWithFormat:@"file://localhost%@", filename]];
NSLog(@"Adding URL: %@", url);
ありがとうございました – evilfred