【问题标题】:get click event on subview on main uiview在主uiview的子视图上获取点击事件
【发布时间】:2012-04-03 01:16:16
【问题描述】:

我有一个包含滚动图像+分页的视图。我已在 UIVIEW 上添加了这些图像,并将此 UIView 添加到主视图。我想检测滚动视图中图像的点击事件并在主视图中处理它们。

我该怎么做?

请帮忙

【问题讨论】:

    标签: iphone objective-c ios uiview uiscrollview


    【解决方案1】:

    你可以用手势识别器解决这个问题。

    // In the view controller where you create the subviews
    // (not sure from your question, but I think you are adding image views to a scroll view
    
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake...];
    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageViewTapped:)];
    [imageView addGestureRecognizer:tap];
    

    现在,当图像视图被点击时,它会被调用

    - (void)imageViewTapped:(UITapGestureRecognizer *)gr {
    
        UIImageView *theImageViewThatGotTapped = (UIImageView *)gr.view;
    }
    

    【讨论】:

      【解决方案2】:

      使用手势简单的一个

      UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake...];
      UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageViewTapped:)];
      [imageView addGestureRecognizer:tap];
      

      然后调用选择器方法并做任何你想做的事..

      【讨论】:

        【解决方案3】:

        就个人而言,我没有添加UIImageView,而是将图像添加为UIButton,并为该按钮设置图像。然后,您将内部事件的修饰链接到您认为合适的方法。

        【讨论】:

          【解决方案4】:

          对不起,我没有时间写代码。

          为所有图像设置不同的标签将所有图像保存在数组中。然后在 touchbegin 设置框架并使用标签检查。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-06-21
            相关资源
            最近更新 更多