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 から明示的に行う必要がありますか?