以编程方式单击 UIImageView 上的事件

Posted

技术标签:

【中文标题】以编程方式单击 UIImageView 上的事件【英文标题】:Click Event on UIImageView programmatically 【发布时间】:2014-05-12 11:02:13 【问题描述】:

我正在显示来自代码的图像集合, 这是我的代码:

UIImageView *addview;
myimgeview *addimageview =[[myimgeview alloc]initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%@%d",PhotoName,i]] text:[textArray objectAtIndex:i]];

我想以编程方式处理addimageView 上的触摸事件。

【问题讨论】:

【参考方案1】:

我会建议不同的方法。将点击手势识别器添加到图像视图。这可能是最简单的解决方案。如果你有 addImageView 方法来添加图像视图,那么继续这样,

- (void)addImageView

    UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(10,10,100,100);
    imageView.userInteractionEnabled = YES;
    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self selector:@selector(tapped:)];
    [imageView addGestureRecognizer:tap];


- (void)tapped:(UITapGestureRecognizer*)tap

    NSLog(@"%@", tap.view);

【讨论】:

【参考方案2】:

您必须继承它并覆盖-touchesBegan: 方法,或者您可以将手势识别器添加到此对象。这是有关此的文档: Event Handling Guide for ios

好的方法是继承这个类并在类中添加手势识别器。

【讨论】:

以上是关于以编程方式单击 UIImageView 上的事件的主要内容,如果未能解决你的问题,请参考以下文章

UIImageView 上的按钮不可点击

如何以编程方式自动旋转UIScrollView和UIImageView?

如何通过在Vue中单击以编程方式触发可拖动的“移动”事件?

TableViewCell 上的 UIImageView 缺少单击单元格的约束

响应来自滚动视图 ios 5 内 UIImageView 数组的事件

如何以编程方式绘制边框并在 UIImageview 周围的文字后将其删除?