使用绑定实现 NSTableView 拖放重新排列?



作为一名业余的Obj-C/Cocoa开发人员,我最近一直在努力在我的软件的NSTableViews中启用拖放操作。在对此感到沮丧之后,我突然想到了一件事:为什么我们要直接与表视图交互?通过表的绑定NSArrayController移除和重新插入项目来实现拖放不是更好吗?

其次,为什么没有一个更优雅的解决方案来添加这样的通用功能?这似乎是苹果想要让drop dead易于实现的东西。

第三,如果这些说法中有任何一个看起来是无知的,请原谅我!虽然我知道足够的知识来拼凑各种软件,但我甚至不是一个专家。

我也会在Red Sweater Software的博客上查看这篇文章。他提供了NSArrayController的一个子类,可以为您处理拖放操作。如果你想正确地支持多个图像拖动(在Lion中引入),它可能需要一些更新,但这将是一个很好的起点。

我刚刚开始进入这个领域,将我的Carbon应用程序更新到21世纪,我已经通过开发者中心找到了一些不错的资源。特别是WWDC 2011视频《会话120-基于视图的NSTableView》及其相关项目,尤其是《TableViewPlayground》

要习惯Cocoa应用程序的MVC模式肯定很难,但Cocoa最棒的地方在于你能以多快的速度让原型发挥作用,并在进行中添加。事实上,我很想从TableViewPlayground开始,去掉我不需要的部分。

最新更新