我想这样做,所以当我点击 UITableViewCell 中的图像时,它会推送一个新视图并显示一个您可以操作的 UIImageView(例如捏住它并展开它)。
目前,我正在使用一个自定义单元格,它以编程方式将图像添加到单元格中:
for (int i = 0; i < [self.news.imgURL count]; i++) {
UIImageView *image = [[UIImageView alloc] init];
[image setImageWithURL:[NSURL URLWithString:[self.news.imgURL objectAtIndex:i]]];
[image setFrame:CGRectMake(20, (labelSize.height + 25 + 14) + (i * 280), 280, 280)];
image.contentMode = UIViewContentModeScaleAspectFit;
image.tag = 101 + i;
image.userInteractionEnabled = YES;
[self.contentView addSubview:image];
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
[tap setNumberOfTapsRequired:1]
[image addGestureRecognizer: tap];
}
这位于我的 customcell.m 文件中。
如上面的代码所示,我使用了 GestureRecognizer,我可以使用以下代码检测图像的点击:
-(void) handleTap:(UITapGestureRecognizer *)recognizer {
if (recognizer.state == UIGestureRecognizerStateEnded) {
NSLog(@"Image tapped!", nil);
}
}
但我不知道如何从 customcell.m 文件中推送新视图。有没有办法从 customcell.m 文件中推送新视图,或者我必须从我的 masterviewcontroller 显式执行它?