Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 让屏幕上的多个对象检测到手指滑动?_Ios_Objective C_Cocoa Touch_Gesture - Fatal编程技术网

Ios 让屏幕上的多个对象检测到手指滑动?

Ios 让屏幕上的多个对象检测到手指滑动?,ios,objective-c,cocoa-touch,gesture,Ios,Objective C,Cocoa Touch,Gesture,我的目标是让屏幕上的一堆方块检测滑动的手指,它们只会在前面的方块被滑动时执行它们的功能。我想知道是否有人有什么好的建议或想法可以使用?我想我应该创建一个NSMutableArray,使用一个结构包含每个正方形的点,然后将该结构包装在NSValue中,然后将其添加到数组中。然后我想我应该使用一个循环来读取数组,并在屏幕上创建所有的方块。但是,当手指滑过正方形时,我如何使其检测?我需要在循环中设置它吗?有人有什么建议吗?对不起,我对iOS游戏开发世界有点陌生 我对你的问题有点困惑,但我认为你想要的是

我的目标是让屏幕上的一堆方块检测滑动的手指,它们只会在前面的方块被滑动时执行它们的功能。我想知道是否有人有什么好的建议或想法可以使用?我想我应该创建一个
NSMutableArray
,使用一个结构包含每个正方形的点,然后将该结构包装在
NSValue
中,然后将其添加到数组中。然后我想我应该使用一个循环来读取数组,并在屏幕上创建所有的方块。但是,当手指滑过正方形时,我如何使其检测?我需要在循环中设置它吗?有人有什么建议吗?对不起,我对iOS游戏开发世界有点陌生

我对你的问题有点困惑,但我认为你想要的是:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 
{
UITouch *touch = [[event allTouches] anyObject];
CGPoint touchLocation = [touch locationInView:self.contentView];

for (UIView *view in self.contentView.subviews)
{
    if ([view isKindOfClass:[MyCustomView class]] &&
        CGRectContainsPoint(view.frame, touchLocation))
    {

    }
}
}


这将在触摸屏幕上的任何对象时进行检测。如果这不能解决您的问题,请让我知道我将尝试修改以更好地解决问题

也有一些方法可以在不检查类类型的情况下执行此操作,但是由于您使用的是多个正方形(我假设它们都是同一类),我认为使用isKindOfClass可能是最好的方法。谢谢您的回答!对不起,不清楚!其想法是使用阵列中的坐标创建一组这些正方形作为它们的位置。然后,我想能够检测到什么时候滑倒,然后它就会执行它的功能。但是,方块只能按顺序滑动。例如:如果平方1还没有被滑动,那么平方8将不会起任何作用。有没有办法检查滑动对象上的变量?例如:如果(theSlidOverObject.aValue=something){}else{},我相信您可以将对象按顺序放入数组中。然后,如果触摸的对象是阵列中的下一个,则执行操作1,否则执行操作2。我有这个@home的代码,但我现在是@work:/我会尽量记住今晚的事,或者在午餐时找点东西。好的,那真的很有帮助!谢谢