cocoa - 为什么是-[NSPasteboard writeObjects :] returning NO for an array of NSURL objects?

标签 cocoa osx-snow-leopard nsurl 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];
}

我的应用程序是新的,所以我的目标是 10.6+ 并根据 the documentation ,“在 Mac OS X v10.6 及更高版本上,请使用 writeObjects: 将 URL 直接写入粘贴板。”

我已经验证我尝试写入的对象确实是 NSURL 对象,因此我不确定该过程在哪里发生故障或如何进一步解决该问题。预先感谢您的帮助。

最佳答案

你清除粘贴板了吗?您需要这样做,从而成为粘贴板的所有者,然后才能将对象写入粘贴板。

关于cocoa - 为什么是-[NSPasteboard writeObjects :] returning NO for an array of NSURL objects?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3903010/

相关文章:

objective-c - 自定义查找器(文件夹)图像 w/Cocoa

php - Wordpress:建立数据库连接时出错。是的,我已经尝试过了。然后

ios - NSString 在 URL 中转换时被认为是 null

macos - 在 Cocoa 中删除文件的正确方法

objective-c - 更新 NSMenu 中的项目时的内存管理

objective-c - 如何将字符串从 Applescript 传递到 Objective C

macos - dyld : Library not loaded error when running command in terminal

Eclipse Helios x64 (Mac) - JSP 编辑器挂起/卡住

swift - Alamofire 上下文类型 anyobject 不能与字典文字一起使用

ios - 下载 HTML 内容