为什么 - [NSPasteboard writeObjects:]为NSURL对象数组返回NO?

jxp*_*777 1 cocoa nsurl osx-snow-leopard nspasteboard

我有一个NSArrayController,我用它来为IKImageBrowserView提供数据.我想支持从IKImageBrowserView拖放到其他应用程序.这是我的代码中的相关方法:

- (NSUInteger) imageBrowser:(IKImageBrowserView *) aBrowser writeItemsAtIndexes:(NSIndexSet *) itemIndexes toPasteboard:(NSPasteboard *)pasteboard{
    NSArray *items = [[resultsArrayController arrangedObjects] objectsAtIndexes:itemIndexes];
    if(![pasteboard writeObjects:items]){
        return 0;
    }
    return [items count];
}
Run Code Online (Sandbox Code Playgroud)

我的应用是新的,所以我的目标是10.6+,根据文档,"在Mac OS X v10.6及更高版本中,使用writeObjects:将URL直接写入粘贴板."

我已经验证了我试图写的对象确实是NSURL对象,所以我不确定进程中断的位置或者如何进一步解决问题.在此先感谢您的帮助.

Pet*_*sey 10

你清除了粘贴板了吗?在将对象写入粘贴板之前,您需要这样做,从而成为粘贴板的所有者.