我在 C4 应用程序的画布上添加了 42 个形状。如何确定用户触摸了哪个形状?
我添加的形状如下:
#import "C4Workspace.h"
@implementation C4WorkSpace{
C4Shape *greyRect;
}
-(void)setup {
int imageWidth=53.53;
int imageHeight=65.1;
for (int i=0; i<42; i++) {
int xMultiplier=(i)%6;
int yMultiplier= (i)/6;
int xPos=xMultiplier*imageWidth;
int yPos=yMultiplier*imageHeight;
greyRect=[C4Shape rect:CGRectMake(xPos, yPos, imageWidth, imageHeight)];
greyRect.fillColor=[UIColor colorWithRed:0 green:0 blue:0 alpha:0];
greyRect.lineWidth=2;
greyRect.strokeColor=[UIColor colorWithRed:0.7 green:0 blue:0 alpha:1];
[self listenFor:@"touchesBegan" fromObject:greyRect andRunMethod:@"highlightLetter"];
[self.canvas addShape:greyRect];
}
}
-(void)highlightLetter{
C4Log(@"highlightLetter");
}
@end
我几乎只需要知道点击的矩形有哪个数字[i]。
但我不知道在运行线路后如何访问它:[self listenFor:@"touchesBegan" fromObject:greyRect andRunMethod:@"highlightLetter"];
有什么建议么?