У меня есть базовый контроллер:
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
для новых.