我有一个拖动操作,只允许拖动一个文件,我想像这样在“ draggingEntered”上捕获它:
- (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender {
if ([[sender draggingPasteboard] count]] == 1) {
return NSDragOperationCopy;
}
else {
return NSDragOperationNone;
}
}
但是count不是有效的方法或属性,但是我无法弄清楚用什么替换它,所以哪种方法是最好的方法来查看draggingPasteboard上有多少个项目?我应该使用诸如propertyListForType:NSFilenamsPboardType之类的东西在draggingPasteboard上获取文件名数组,然后获取该文件的索引,还是有一种更聪明的方法来做到这一点?
最佳答案
如果要使用计数,则需要使用pasteboardItems
,它是对计数作出响应的项数组。
可以这样完成:
- (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender {
if([[[sender draggingPasteboard] pasteboardItems] count] == 1) {
return NSDragOperationCopy;
}
else {
return NSDragOperationNone;
}
}
关于xcode - 如何查看draggingPasteboard中有多少个文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10697979/