我發現教程here 關於如何在大綱視圖中實現拖放操作。我唯一的問題是我不知道從教程中放置代碼的位置。如果你能告訴我應該把代碼放在Xcode項目中以使其工作,我將非常感激。謝謝!使用NSTreeController,帶拖放的NSOutlineView
1
A
回答
4
您可能還想查看this tutorial(還有一個part two,其中詳述了無序樹)。
特別是,鏈接教程包含一個XCode項目,應該讓你開始。查看DragController.m
以查看您將鏈接引用的代碼放在哪裏。
2
它們是委託/數據源方法,因此您可以將它們放入大綱視圖的委託和數據源中。通常這是您的控制器對象,但是您可以通過IB或編程方式連接連接。我實際上建議學習數據源和委託方法在使用綁定或核心數據之前是如何工作的,因爲綁定並不意味着替代較低級別代碼的知識(並且在綁定之前會遇到很多綁定問題對基礎知識有深刻的理解)。
另外,請記住NSTreeController自10.5以來有所改進,從我聽說你應該能夠在不使用私有方法的情況下獲得實際觀察對象。
4
蘋果已經發布了一個解釋如何做到這一點的示例代碼。 http://developer.apple.com/library/mac/#samplecode/DragNDropOutlineView/Introduction/Intro.html
我發現這個好得多,然後我在互聯網上找到的所有其他樣本。
相關問題
- 1. 與NSOutlineView使用NSTreeController
- 2. 過濾NSOutlineView/NSTreeController
- 3. NSOutlineView,NSTreeController和willDisplayCell
- 4. NSOutlineView +核心數據不使用NSTreeController
- 5. 在MonoMac中使用NSOutlineView和NSTreeController
- 6. Swift:拖放在NSOutlineView
- 7. NSTreeController,NSOutlineview和核心數據
- 8. 在NSOutlineView拖放的問題
- 9. 用NSTreeController過濾NSOutlineView的孩子
- 10. 可可NSOutlineView和拖放
- 11. 在NSOutlineView選項上獲取NSTreeController數據
- 12. NSOutlineView/NSTreeController沒有將其刪除
- 13. 如何觀察使用NSTreeController和NSOutlineView編輯項目
- 14. 如何在使用NSTreeController時查找NSOutlineView行索引
- 15. 如何使用綁定實現在NSOutlineView中的拖放操作?
- 16. NSOutlineView拖拽目錄
- 17. NSOutlineView拖動圖像
- 18. NSOutlineView拖N - 下降
- 19. NSOutlineVIew拖,放不同的窗口(相同的應用程序)
- 20. 如何將NSTreeController,NSOutlineView和Core Data用於「不可見」根項目?
- 21. 如何在不使用NSTreeController的情況下獲取NSOutlineView的選定項目?
- 22. 使用jquery拖放拖放可拖放類的名稱使用jquery拖放
- 23. NSOutlineView的拖放方法沒有被調用
- 24. 排序綁定到NSTreeController的NSOutlineView中的列
- 25. 如何鎖定由NSTreeController填充的NSOutlineView中的父行
- 26. 如何過濾/搜索沒有NSTreeController的NSOutlineView?
- 27. 在沒有NSTreeController的模型更改時自動更新NSOutlineView
- 28. NSOutlineView和NSTreeController可以處理數千個對象嗎?
- 29. 基於視圖的NSOutlineView拖放突出顯示不正確
- 30. 使用SendMessage拖動拖放
我試過在你的鏈接中使用代碼,只需將拖動控制器添加到我的項目中,但它會停止工作的核心數據。 – Joshua 2009-05-30 17:38:22
如果您從鏈接教程編譯並運行XCode項目,您應該看到所有內容都可以像拖放一樣播放。既然如此,這個例子似乎足以回答你所有的問題。我建議你仔細研究教程描述,並遵循所有的步驟,僅以DragController.m爲例。您不可能將其放入您的項目中。 – Naaff 2009-05-30 18:13:28
我再看一眼。 – Joshua 2009-05-30 18:16:28