我正在爲我的NSOutlineView設置拖放,並且我想防止父母被拋棄在他們的某個子女身上。家長和孩子都是集團實體。我明白我需要在outlineView:validatedrop方法中執行此操作。我想我需要用NSPredictate創建一個NSFetchRequest來獲取父項的所有子項,但是我不知道謂詞應該是什麼。NSOutlineView拖放:如何防止父母被丟棄在其子女之一
編輯:它應該是遞歸的,所以它也應該得到兒童的孩子,如果有的話。
有什麼建議嗎?
我正在爲我的NSOutlineView設置拖放,並且我想防止父母被拋棄在他們的某個子女身上。家長和孩子都是集團實體。我明白我需要在outlineView:validatedrop方法中執行此操作。我想我需要用NSPredictate創建一個NSFetchRequest來獲取父項的所有子項,但是我不知道謂詞應該是什麼。NSOutlineView拖放:如何防止父母被丟棄在其子女之一
編輯:它應該是遞歸的,所以它也應該得到兒童的孩子,如果有的話。
有什麼建議嗎?
- (NSDragOperation)outlineView:(NSOutlineView *)ov validateDrop:
(id <NSDraggingInfo>)info proposedItem:(id)item proposedChildIndex:(NSInteger)childIndex;
在上述方法中,您可以管理拖動項目是否可以接受。請退回NSDragOperationNone
,意味着防止掉落。