我正在尝试在 tableView 中实现一个简单的拖放操作。但是,当我尝试使用 readObjectsForClasses 从粘贴板中检索数据时,出现运行时异常
“[__NSCFConstantString initWithBytes:length:encoding:]: 无法识别的选择器发送到实例”
这是我出现问题的 acceptDrop 方法。有人可以帮助指出我做错了什么。
(BOOL) tableView: (NSTableView *) view
acceptDrop: (id ) info
row: (NSInteger) row
dropOperation: (NSTableViewDropOperation) op
{
NSArray *pBoardClasses = [[NSArray alloc] initWithArray:[NSArray arrayWithObjects:[NSStringPboardType class], [NSDragPboard class], nil]];
NSPasteboard *board =[info draggingPasteboard];
if(![board canReadObjectForClasses:pBoardClasses options:nil])
{
NSLog(@"No acceptable data format in pasteboard. Cannot perform this operation!");
return NO;
}
NSArray * dFromPboard = [board readObjectsForClasses:pBoardClasses options:nil];
}