0

作为我的应用程序的一部分,我需要在单击人手图像内的任何位置时触发一个方法。人手图像放置在图像视图中。尽管添加了手势,但我需要添加一个按钮。是否可以创建一个像人手一样的自定义按钮,如下图所示?

在此处输入图像描述

谢谢

4

2 回答 2

2

创建自定义UIButton添加图像手作为其backgroundImagesetImage。然后在里面使用 /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
}
于 2012-08-02T07:41:25.703 回答
1

我认为首先你必须制作适合你图像的多边形。然后你可以用它touchesBegan:withEvent:来获取触摸点的坐标,判断该点是否在多边形内部。

这是与您类似的问题。

如何获得特定的触控区域?

我认为这是一个有点困难的工作,所以也许你最好使用具有碰撞判断功能的 cocos2d 库。

图片

http://box2d.org/forum/viewtopic.php?f=9&t=7487

但我也认为 iOS 在处理触摸方面做得很好,所以这对你来说是有益的。

于 2012-08-02T11:18:24.387 回答