放弃NSTableView行为

Jef*_*Jef 5 cocoa drag-and-drop itunes nstableview

我有一个NSTableView,我已成功实现了两个tableView:validateDrop:proposedRow:proposedDropOperation:tableView:acceptDrop:row:dropOperation:.

我不需要tableView:writeRowsWithIndexes:toPasteboard:因为那是用于将对象拖出NSTableView.

现在,问题在于我希望它表现得像iTunes一样.在iTunes 9.x中(我不记得以前的版本)你有一个NSTableView(播放列表),当你将文件拖到它上面时,你会在NSTableView中获得这个蓝色焦点(也许是NSScrollView?)而你没有指示您要插入对象的位置的蓝色水平线.所以基本上我想:

  • 将文件悬停在NSTableView上时,行之间没有蓝色水平插入行.

  • NSTableView(或NSScrollView)中的蓝色焦点.

非常感谢任何帮助,所以提前谢谢你.

Eri*_*ren 7

来自Mac开发中心

- (void)setDropRow:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation
Run Code Online (Sandbox Code Playgroud)

....

"为行传递值-1,并且NSTableViewDropOn作为操作导致整个表视图突出显示而不是特定行.如果接收方显示的数据不允许用户删除特定项目,则此选项很有用行位置"