Можно ли щелкнуть изображение и открыть новый View Controller? - PullRequest
0 голосов
/ 08 мая 2018

Я новичок в IOS и сейчас изучаю IDE. Мне было интересно, можно ли связать imageView при нажатии на View Controller

Ответы [ 4 ]

0 голосов
/ 08 мая 2018

Да. Это возможно. Вам нужно будет добавить распознаватель жестов касания к просмотру изображения и в функции выполнить переход.

SWIFT 4

let singleTap = UITapGestureRecognizer(target: self,action:Selector(“imageTapped”))
yourImageView.isUserInteractionEnabled = true
yourImageView.addGestureRecognizer(singleTap)

Функция для обработки Нажмите:

@objc func imageTapped() {
    performSegue(withIdentifier: "yourNextScreen", sender: "")
}
0 голосов
/ 08 мая 2018

Конечно.Во-первых, в viewDidLoad вашего UIViewController сделайте его подключаемым:

imageView.isUserInteractionEnabled = true

Затем назначьте распознаватель жестов:

imageView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(self.imageTap)))

Как только действие будет запущено, выполните переход кновый ВК:

// Func in your UIViewController
@objc func imageTap() {
    // present modally
    self.present(YourNewViewController())
    // or push to the navigation stack
    self.navigationController?.push(YourNewViewController())
    // or perform segue if you use storyboards
    self.preformSegue(...)
}
0 голосов
/ 08 мая 2018

Да. Вы можете привязать распознаватель жестов касания к вашему изображению. Вы можете перейти по этой ссылке на предыдущий ответ на , как это сделать программно

Вы можете сделать это полностью в конструкторе интерфейсов, поместив UIB-кнопку с прозрачным фоном и без текста над ImageView, а затем перетащите кнопку управления в контроллер представления, для которого вы хотите вызвать переход при касании.

0 голосов
/ 08 мая 2018

Конечно, это так. Вы должны добавить UITapGestureRecognizer в UIImageView и добавить селектор, чтобы инициировать проталкивание нового метода viewcontroller.

Например;

@IBOutlet weak var imageView: UIImageView! {
    didSet {
        let imageTapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(imageTapped))
        imageView.addGestureRecognizer(imageTapGestureRecognizer)
        imageView.isUserInteractionEnabled = true
    }
}

func imageTapped() {
    //navigate to another view controller
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...