拖放 - 是不是可以获取 URL?
Posted
技术标签:
【中文标题】拖放 - 是不是可以获取 URL?【英文标题】:Drag and Drop - Is it possible to get the URL?拖放 - 是否可以获取 URL? 【发布时间】:2012-04-29 12:15:58 【问题描述】:我实现了一个简单的拖放操作。主要目的是让用户从浏览器拖放图像。我可以得到这张图片的来源网址吗?
可以说,我在 SO 上,我拖放徽标。有没有办法让我知道这是来自 http://***.com ? 谢谢
【问题讨论】:
很好的问题,但我怀疑如果您在传入的拖动中看不到任何 URL,则无法查询该图像来自的浏览器。这是每个浏览器制造商(Safari、Firefox、Chrome 等)都必须在其拖动实现中提供的东西。也许文件增强请求进入 Radar(用于 Safari)和 Bugzilla(用于 Firefox)? 感谢您的意见。是否至少可以知道拖动来自哪个应用程序? 不,不是。这不会作为拖动信息的一部分传递。 当。只是花了几个小时试图弄清楚这一点并浏览了所有的苹果文档。对我来说,我只想从网上重新上传拖动的图像,所以这是可能的。不过,获得网址会很棒! :( 我认为 EXIF 元数据选项有时会起作用。 【参考方案1】:对于不是链接的图像,以下代码将记录拖动图像的来源 URL。这适用于我在 Safari 和 Firefox 中。
@implementation DragView
- (void)awakeFromNib
[self registerForDraggedTypes:[NSArray arrayWithObject:NSURLPboardType]];
- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
return NSDragOperationCopy;
- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender
NSPasteboard *pboard;
pboard = [sender draggingPasteboard];
NSLog(@"types: %@", [pboard types]);
NSLog(@"url: %@", [NSURL URLFromPasteboard:pboard]);
return YES;
@end
如果图像也是链接,则记录的 URL 是该链接的 href。也可以使用扩展属性的 kMDItemWhereFroms 键从文件中获取“从哪里来”URL(如 Finder 的 Get Info 面板中所示)。
【讨论】:
谢谢,但这不是我想要的。 我不想要图片的 URL。我想要它被拖出的网页的 URL。 啊啊啊!那我帮不了你了,对不起!以上是关于拖放 - 是不是可以获取 URL?的主要内容,如果未能解决你的问题,请参考以下文章