iOS: IBOutlets работает на 13, но вылетает на 12.4.1 - PullRequest
1 голос
/ 10 октября 2019

У меня есть базовый контроллер:

public class ListViewController<T>: UIViewController where T: Codable {
    @IBOutlet public var indicator: UIActivityIndicatorView!
    @IBOutlet public var tableView: UITableView!
    @IBOutlet public var searchBar: UISearchBar!
}

и у меня есть подкласс с раскадровкой, которая содержит дизайн ViewController:

public class FlightListViewController: ListViewController<FlightItinerary> {}

для подключения IBOutlets Я устанавливаю класс ViewController в ListViewController,После установки IBOutlets я устанавливаю класс ViewController в FlightListViewController. Это работало на iOS 12 до перехода на Xcode 11. Теперь он работает на iOS 13, но падает на iOS 12 со следующей ошибкой:

Unknown class _TtC9App24FlightListViewController in Interface Builder file.
2019-10-10 10:02:50.248232+0300 App[458:36248] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x12fd3e710> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key indicator.'

У кого-нибудь есть такая же проблема dproblem?

ОБНОВЛЕНИЕ

Эта глупая ошибка, похоже, преследует разработчиков начиная с Xcode 5. Я закончил тем, что полностью отказался от XIB и раскадровок. Сейчас я программно излагаю свою точку зрения. Я также планирую использовать Texture для моих старых проектов и SwiftUI для новых.

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