0xS*_*ina 5 macos cocoa drag-and-drop objective-c
我实现了一个简单的拖放操作.主要目的是让用户从浏览器中拖放图像.我可以获取拖动此图像的URL吗?
所以,让我们说,我就这样,我拖放徽标.有没有办法让我知道这是来自http://stackoverflow.com?谢谢
对于不是链接的图像,以下代码将记录拖动图像来自的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
Run Code Online (Sandbox Code Playgroud)
如果图像也是链接,则记录的URL是该链接的href.也可以使用扩展属性的kMDItemWhereFroms键从文件中获取"where from"URL(如Finder的"获取信息"面板中所示).
| 归档时间: |
|
| 查看次数: |
1648 次 |
| 最近记录: |