Кнопка панели вкладок выдает ошибку NSException, почему? - PullRequest
0 голосов
/ 23 мая 2019

Выпуск

Я использую Xcode 10, Swift 5. Я пытался переименовать некоторые переменные и массивы. Я изменил их все обратно на первоначальное название. После того, как я это сделал, кнопка панели вкладок выдает ошибку в AppDelegate: Поток 1: сигнал SIGABRT

вывод на консоль:

2019-05-23 12: 46: 56.511809-0400 DIY Home Repair [1958: 326215] * Завершение приложения из-за необработанного исключения «NSUnknownKeyException», причина: «[setValue: forUndefinedKey:]: этот класс является не соответствует кодировке значения ключа для ключа videoImageView. ' * Первый вызов стека вызовов: (0x1d8b30518 0x1d7d0b9f8 0x1d8a4dec0 0x1d94b5a00 0x2054fb6fc 0x204d31324 0x1d8a1df38 0x204d2df7c 0x2052753a4 0x104560b80 0x104560d7c 0x20528ea38 0x20528ef38 0x20525b740 0x205278a60 0x2054fbe54 0x1dcfbe1f0 0x1dcfc3198 0x2054e7e88 0x204a3abe4 0x204a35478 0x204a33744 0x2054b8994 0x2054b8c50 0x2054c6758 0x2054c2360 0x2054b86d8 0x204a3b9e8 0x204a3bf7c 0x204a3d210 0x204a20420 0x2054fbe54 0x1dcfbe1f0 0x1dcfc3198 0x1dcf260a8 0x1dcf54108 0x1dcf54cf8 0x1d8ac189c 0x1d8abc5c4 0x1d8abcb40 0x1d8abc354 0x1dacbc79c 0x205073b68 0x10455d750 0x1d85828e0) libc ++ abi.dylib: завершается с необработанным исключением типа NSException (лдб)

Попытка решить проблему

Я проверил все свои сегы, имена классов - они соответствуют контроллерам. Я проверил весь код, чтобы убедиться, что все переменные и массивы являются точными. Я удалил переход из rootTabBarController в ViewController и снова подключился. Я закомментировал весь код, чтобы увидеть, есть ли что-то в viewController, который выдает эту ошибку. Я очистил папку сборки и перезапустил Xcode. Ничего из этого не сработало.

Код для viewController

Имейте в виду, я все это прокомментировал и добавил пустой метод viewDidLoad. Это все еще бросило NSExeption.

import UIKit

class ProductViewController: UIViewController {

    @IBOutlet weak var tableView: UITableView!

     var videos: [Video] = []

     override func viewDidLoad() {
        super.viewDidLoad()
        videos = Video.createVideoArray()
     }

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

         if segue.identifier == "MasterToDetail" {
            let destVC = segue.destination as! DetailViewController
            destVC.video = sender as? Video
         }
     }
}

extension ProductViewController: UITableViewDelegate, UITableViewDataSource {

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return videos.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let video = videos[indexPath.row]

    let cell = tableView.dequeueReusableCell(withIdentifier: "VideoCell") as! VideoCell
    cell.setVideo(video: video)

    return cell
}

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    let video = videos[indexPath.row]
    performSegue(withIdentifier: "MasterToDetail", sender: video)
}
override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}
}

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...