Problem mit Segue / TableviewController

  • Ersteller MaxineSchörnakoff
  • Erstellt am
MaxineSchörnakoff

MaxineSchörnakoff

Mitglied
Thread Starter
Dabei seit
06.03.2023
Beiträge
1
Reaktionspunkte
0
Hallo zusammen,

ich habe in meinem Projekt einen VC mit einer TableView drin. Der VC hat ein Protocol womit ich das Delegate steuere. Der VC soll einen Segue ausführen wenn ich in der TableViewCell auf ein imageView klicke. Hat er vorher auch getan aber nun nicht mehr. Ich habe schon versucht den Identifier des Segues umzubenennen - ohne Erfolg. Durch print‘s weiß ich, dass sowohl die Funktion des TapGestures, als auch das prepare und das perform aufgerufen wird. Aber der eigentliche Segue passiert nicht und die App friert komplett ein. Was übersehe ich?! In der cell habe ich:

Code:
func addTapGestureToPostImage(){
    let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTapPost))
    postImageView.isUserInteractionEnabled = true
postImageView.addGestureRecognizer(tapGesture)
}
@objc func handleTapPost(){
    guard let post = post else { return }
    print("TEMP - 1. BILD GEKLICKT ->  -> \(post.id ?? "STANDARD")")
    delegate?.didTapPostImage(post: post)
}

Im tableView habe ich:
Code:
override func prepare(for segue: UIStoryboardSegue, sender: Any?){
    if segue.identifier == "feedToSinglePostViewNeu"{
        print("TEMP - TEMP PREPARE -> \(self.post?.id ?? "DEFAULT")")
        let singlePostVC = segue.destination as! SinglePostViewController
        singlePostVC.post = self.post
    }
}

Und in der extension des VC‘s habe ich:

Code:
extension StartViewController: HomeTableViewCellDelegate {
    func didTapPostImage(post: PostModel) {
        self.post = post print("TEMP - PERFORM -> \(post.id ?? "DEFAULT")")
        self.performSegue(withIdentifier: "feedToSinglePostViewNeu", sender: self)
    }
}

Bevor ich als Ziel einen TableViewController hatte war es ein ViewController mit einer TableView drin. Das wurde aber zu umständlich daher habe ich einen neuen TVC erstellt und die segues und Outlets alle neu gemacht: Die Klasse zum neuen TVC habe ich über CocoaTouchClass erstellt - als Subklasse von UITableViewController.

Vielen Dank im Voraus für eure Hilfe.
Grüße Maxine
 
Zurück
Oben Unten