如何在图像上创建热链接?

时间:2009-04-09 22:36:31

标签: iphone cocoa-touch uiscrollview uiimage

我不确定这个版本的iPhone版本是什么,但在HTML中它是一个图像映射。地图的某些区域会将您引导至不同的页面。我想使用一个图像,主要是在一个滚动视图中,我可以让某些区域执行不同的操作。例如,Chemical Touch http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=288060442&mt=8就是这样做的。单击一个元素,它的大小会增加以显示更多详细信息。什么是这种类型的技术,它是如何创建的?

我希望与用户更加互动,我该怎么做?

  • 将地图图钉放到此图片上
  • 根据我在该区域是否有文字显示UITextField
  • 根据用户操作叠加文字

非常感谢任何建议。

1 个答案:

答案 0 :(得分:1)

您基本上需要做的是覆盖以下任何一个或全部:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event;
在你的UIView子类中(或实际上是UIResponder的任何子类)。然后,您可以按照自己的意愿处理事件,例如执行您在问题中提到的任何事情。

例如,这是Apple的简单事件处理程序的示例代码:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch* touch = [touches anyObject];
    NSUInteger numTaps = [touch tapCount];
    if (numTaps < 2) {
        [self.nextResponder touchesBegan:touches withEvent:event];
   } else {
        [self handleDoubleTap:touch];
   }
}

“iPhone应用程序编程指南”中的Event Handling部分应该为您提供入门所需的所有信息。