한 번 만진 썸네일 이미지 목록을 포함하는 응용 프로그램을 만들려고하면 썸네일보기 컨트롤러에서 선택한 이미지를 표시하는 하나의 큰 UIImageView가있는 새로운보기 컨트롤러가 만들어집니다. "SmallPicsViewController"에서는 아래 코드를 사용하지만 이미지를 선택할 때 아무 일도 일어나지 않습니다. 인스턴스화하려고하는 새로운 뷰 컨트롤러는 bigPics라는 UIIMageView에 대한 IBOutlet을 포함하는 "BigPicsViewController"라고합니다.UIImageView에서 UITapGestureRecognizer를 사용하여 UIViewController를 인스턴스화하십시오.
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
if([[touch valueForKey:@"view"]isKindOfClass:[UIImageView class]]){
UIImageView *viewSelected = (UIImageView *)[touch valueForKey:@"view"];
BigPicsViewController *bigController = [[BigPicsViewController alloc]initWithNibName:@"BigPicsViewController" bundle:nil];
bigController.bigPic = viewSelected;
}
}
"아무 일도 없다"는 뜻은 무엇입니까? 위 코드가 나타나므로 새 뷰 컨트롤러에서는 아무 작업도 수행하지 않습니다. UINavigationController 스택에 푸시하거나 현재 뷰 컨트롤러에서 모달 뷰로 표시해야합니다 (앱 UI 흐름 설정 방법을 모르기 때문에 "어느 쪽인가"라고 말합니다). – gschandler