在我的一个应用程序中,我使用整个屏幕的图像。可以在一定程度上放大。该图像有八种不同的形状(包括人、形状等)。我要做的是确保图像的每个形状都是可点击的。触摸每个部分需要不同的屏幕。我不知道如何实现这一点。我用谷歌搜索但没有解决方案。
1.)这是否可以通过使用坐标来实现(普通图像和缩放图像的坐标会有所不同吗?如何通过使用坐标来实现这一点?
2.)如果不是,实现我的目标的最佳方法是什么?
非常感谢任何想法/示例。
在我的一个应用程序中,我使用整个屏幕的图像。可以在一定程度上放大。该图像有八种不同的形状(包括人、形状等)。我要做的是确保图像的每个形状都是可点击的。触摸每个部分需要不同的屏幕。我不知道如何实现这一点。我用谷歌搜索但没有解决方案。
1.)这是否可以通过使用坐标来实现(普通图像和缩放图像的坐标会有所不同吗?如何通过使用坐标来实现这一点?
2.)如果不是,实现我的目标的最佳方法是什么?
非常感谢任何想法/示例。
我会在包含UITapGestureRecognizer
您的图像的 imageView 中添加一个。以及locationOfTouch:inView:
确定触摸坐标的方法。
如果我不明白你的问题,请纠正我。对我来说,这应该很简单吧?只有几个背景清晰的按钮?它们都在图像之上。
检查UIResponder
和触摸方法在那里。您可能想要使用诸如-touchesEnded:withEvent:
检测手指何时从屏幕上抬起之类的东西。
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
for (UITouch *touch in touches) {
CGRect touchLocationInView = [touch locationInView:imageView];
// Do something to check that the rect is valid
// If valid, react to it
}
}
另外,还有一个链接UITouch
。