问题描述
|
是否可以检查特定触摸位置上的物体数量?
我已经用数字标记了所有对象,但没想到它会起作用。
基本上我想做的就是将uiimageview添加到接触点,但是当已经有另一个uiimageview时,我什么也不会做。
谢谢!
解决方法
您有个好主意。您在视图上添加的所有对象已经保存在名为“ 0”的数组中。标记它们是个好主意,因为这样您可以轻松地用
[myview viewWithTag: kFirstViewTag]
访问它们。
因此要回答第二部分,在检查触摸位置时,请检查触摸位置是否与您的任何子视图相交。
例如:
for (UIView* view in [myView subviews]) {
if (CGRectContainsPoint([view frame],touchPoint) {
//do something
}
}
我可以假设您可能不需要遍历所有子视图,因此您可以使用for循环将标记从kFirstViewTag
限制为ѭ4limited,例如:
for (int i = kFirstViewTag; i <= kLastViewTag; i++) {
UIView *view = [myView viewWithTag: i];
if (CGRectContainsPoint([view frame],touchPoint) {
//do something
}
}