Всегда переход от одного ViewController к другому осуществляется с помощью некоторого кода, который толкает или представляет или выполняет segue для целевого viewController. Дело в том, когда вы выполняете этот код. Поскольку вы не используете кнопку, вы должны определить, что именно должно вызвать изменение экрана.
Что вы подразумеваете под «Я пытаюсь сделать так, чтобы, если человек« CGIntersectsRects »UIImageView, он перенесет меня в другой контроллер просмотра», является неоднозначным.
Если вы хотите загрузить экран, когда пользователь коснется UIImageView, вы можете использовать кнопку вместо ImageView и установить соответствующее изображение для этой кнопки. Другим способом является использование метода (void) touchhesBegan: в вашем viewController для определения точки, в которой получено касание, и посмотреть, попадет ли затронутая точка внутрь рамки изображения.
Еще один простой способ - добавить распознаватель жестов в UIImageView.
UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageViewTouched)];
- (void)imageViewTouched {
//Code to load the new screen
}
Если вы пытаетесь загрузить новый экран всякий раз, когда два вида перекрываются, то вы должны наблюдать за KVO notification for the frame property of the interested view.