2012-07-11 54 views
0

在我的应用程序中,用户可以从一堆CALayers中拖拽顶层CALayer。我如何检测两个CALayers是否重叠?

当用户停止拖动时,CALayer应该返回到其他CALayers顶部的原始位置。除非CALayer(拖动后)不再与其他CALayer重叠,在这种情况下,它应该移动到其他CALayer下。

现在,我该如何检测两个CALayer是否重叠?

回答

1

CALayer的框架属性是一个CGRect。幸运的是,CGGeometry有以下方法:

CGRectIntersectsRect

你会使用这样的:

if (CGRectIntersectsRect(myLayer1.frame,myLayer2.frame)) { 

//code 

} 
+0

感谢卡恩,帮我了! – user1519237 2012-07-17 12:49:07