我之前已经知道这个问题的变体,但我正在开发一个使用两个独立触摸操作的应用程序。该应用程序在iPad模拟器上完美运行,但只允许我在设备上运行时使用一键。当我开始第二次触摸时,应用程序停止。有什么想法/建议?
谢谢!
编辑:
以下是将不同触摸分配给各自合成变量的代码:
//Csound varaibles assigned depending on touch location
-(void)sendValueYFromOneTouch:(Float32)valueY object:(UInt16)objectID{
if (objectID == 1)
{
_grainValue = 100 + valueY * 900;
// printf("grainValue is %f", _grainValue);
}
else if (objectID == 2)
{
_densityValue = 1 + valueY * 9999 -1;
printf("densityValue is %f", _densityValue);
}
}
-(void)sendValueXFromOneTouch:(Float32)valueX object:(UInt16)objectID
{
if (objectID == 1)
{
_offsetValue= valueX * 20000;
// printf("offsetValue is %f", _offsetValue);
}
else if (objectID == 2)
{
_durationValue= 0.05 + valueX * 0.95;
printf("durationValue is %f", _durationValue);
}
}
当它在模拟器上运行时,它可以很好地工作,但由于某些原因不适用于iPad本身。
答案 0 :(得分:0)
我猜,您应该在头文件中包含UIGestureRecognizerDelegate
。
进一步使用 - >
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{
return YES;
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
return YES;
}