Ios UIimageView和辅助视图在TableViewCell中分别工作

Ios UIimageView和辅助视图在TableViewCell中分别工作,ios,uitableview,Ios,Uitableview,我正在开发一个类似于苹果提醒程序的应用程序。我有一个包含数据的tableView。该单元具有UIImageView和披露指示器附件视图。选择其任何行时,将推送视图控制器 我想让每一行的UIImageView独立于行选择,因为它在Apple提醒应用程序中。我该怎么做 我尝试将UIimageview作为单元格的子视图,并向其中添加了UIApgestureRecognitizer。最后一个插入行的效果很好,但与其他行没有关系。< P>而不是子类UIImageView,您可以考虑子类UITabelVIE

我正在开发一个类似于苹果提醒程序的应用程序。我有一个包含数据的tableView。该单元具有UIImageView和披露指示器附件视图。选择其任何行时,将推送视图控制器

我想让每一行的UIImageView独立于行选择,因为它在Apple提醒应用程序中。我该怎么做


我尝试将UIimageview作为单元格的子视图,并向其中添加了UIApgestureRecognitizer。最后一个插入行的效果很好,但与其他行没有关系。

< P>而不是子类UIImageView,您可以考虑子类UITabelVIEW单元格。在子类中,您仍然可以向UIImageView添加UIApgestureRecognitizer,但您可以将方法作为单元格子类的目标(而不是表控制器,尽管您没有说明处理程序当前的目标)

将TapRecognitor添加到自定义单元格的UIImageView中,并在自定义单元格上具有布尔标志(例如imageViewTapped)。在点击处理程序中,将imageViewTapped设置为YES


现在,无论点击是否在imageVIew上,tableView控制器仍将获得对didSelectRowWithIndexPath的调用。因此,在DidSelectRowatinexPath中,计算自定义单元格的imageViewTapped属性。如果已设置该标志,请在导航堆栈上按viewController A(用于imageView行为)。如果imageViewTapped==否,则按下viewController B(可能是您已经转换到的对象)。

@Adel。您可以在imageView上放置一个透明按钮,以响应用户的触摸

CGRect imageRect = (CGRect){100, 100, 100, 100};
UIImageView *imageView = [[[UIImageView alloc] initWithFrame:imageRect] autorelease];
imageView.backgroundColor = [UIColor yellowColor];
[self.view addSubview:imageView];
imageView.userInteractionEnabled = YES;

UIButton *maskBtn = [UIButton buttonWithType:UIButtonTypeCustom];
maskBtn.frame = imageView.bounds;
maskBtn.backgroundColor = [UIColor clearColor];
[maskBtn addTarget:self action:@selector(maskBtnDidClick:) forControlEvents:UIControlEventTouchUpInside];
[imageView addSubview:maskBtn];
请注意,默认情况下,imageView的userInteractionEnabled为NO。 希望有帮助。 :)