Cocoa中的自动“强制排斥”布局

时间:2009-11-17 04:11:25

标签: iphone objective-c cocoa macos

你知道在许多Mac / iPhone应用程序(例如你的Finder)中,当你拖动一个图标时,所有其他图标将被“击退”你的鼠标并为你拖动的图标留出空间

我想知道这是否是一个内置的Cocoa函数(在布局约束等?)。如果没有,是否有任何图书馆或文件如何实施?

1 个答案:

答案 0 :(得分:6)

如果您想免费获得它或多或少,请使用NSCollectionView。

如果NSCollectionView不符合您的需求,使用NSAnimation实现它相当容易。基本上,NSToolbar或NSCollectionView执行此操作的方式(例如)是确定拖动图标的位置,如果您放弃它,它会使用Core Animation将其他图标发送到新位置以移动它们顺利进行。