作为我的应用程序的一部分,我需要在单击人手图像内的任何位置时触发一个方法。人手图像放置在图像视图中。尽管添加了手势,但我需要添加一个按钮。是否可以创建一个像人手一样的自定义按钮,如下图所示?
谢谢
作为我的应用程序的一部分,我需要在单击人手图像内的任何位置时触发一个方法。人手图像放置在图像视图中。尽管添加了手势,但我需要添加一个按钮。是否可以创建一个像人手一样的自定义按钮,如下图所示?
谢谢
创建自定义UIButton
添加图像手作为其backgroundImage
或setImage
。然后在里面使用 /assign 这个图像。如下所示:
handButton = [UIButton buttonWithType:UIButtonTypeCustom];
[handButton addTarget:self action:@selector(handImage_touch) forControlEvents:UIControlEventTouchUpInside];
[handButton setBackgroundImage:[UIImage imageNamed:@"handIMAGE.png"] forState:UIControlStateNormal];
handButton.frame = CGRectMake(x, y, width, height);
[self.view addSubview:handButton];
-(void)handImage_touch{
// do anything
}
我认为首先你必须制作适合你图像的多边形。然后你可以用它touchesBegan:withEvent:
来获取触摸点的坐标,判断该点是否在多边形内部。
这是与您类似的问题。
我认为这是一个有点困难的工作,所以也许你最好使用具有碰撞判断功能的 cocos2d 库。
http://box2d.org/forum/viewtopic.php?f=9&t=7487
但我也认为 iOS 在处理触摸方面做得很好,所以这对你来说是有益的。