0

我在 iPhone 应用程序中有一个视图。在那个视图中,我添加了两个 UIImageView,比如说 img_view1、img_view2。现在我将触摸事件放在该视图上,如下所示。

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
     // Some code are here
}

我怎样才能得到哪个图像视图开始触摸?

4

4 回答 4

2
UITouch *touch = [touches anyObject];
CGPoint pt = [touch locationInView:self];

if (CGRectContainsPoint(img_view1.frame, pt)
{
    NSLog(@"Image View 1 touched");
}

等等

于 2012-07-25T11:09:02.110 回答
0

在 xib 中启用您的图像视图用户交互(或者如果您以编程方式添加它,则通过代码)并使用 UIResponder 方法 touchesBegan、touchesMoved、touchesEnded 等来检测图像视图上的触摸:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

UITouch *touch = [touches anyObject];

if ([touch view] == yourImageView)
{
        //add your code for image touch here 
}

}

于 2012-07-25T11:13:41.393 回答
0

使用此代码

UITouch *touch = [touches anyObject];

if (touch.view==imageView1) { 
  // do something
}
else if (touch.view==imageView2) { 
  // do something else
}

希望这是您正在寻找的。

享受编码:)

于 2012-07-25T11:14:05.883 回答
0

使用此代码:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{

   UITouch *touch = [touches anyObject];
        if(touch.view == img_view1)
        {
    }
    else if(touch.view == img_view2)
        {
    }
}
于 2012-07-25T11:15:18.190 回答