我试图使用单身,但没有运气获得相同的实例
我用这种方式......
class RCHDownloadTVCC: UITableViewController {
private static let sharedInstance = RCHDownloadTVCC()
static func defaultInstance() -> RCHDownloadTVCC {
return sharedInstance
}
......}
答案 0 :(得分:1)
视图控制器永远不应该是单例。绝对没有。
视图控制器根据需要创建,并在不再需要时销毁。单身人士是在第一次需要时创造出来的,永远不会被摧毁。
使viewcontroller成为单例会阻止viewDidLoad正常工作,例如。除此之外,你永远不会知道两次不需要相同的视图控制器。
答案 1 :(得分:0)
试试这个
class RCHDownloadTVCC: UITableViewController {
static let sharedInstance = RCHDownloadTVCC()
......}
在其他课程中获取它:
let rchdownloadSingletone = RCHDownloadTVCC.sharedInstance
更新: Ofc您需要确保只按RCHDownloadTVCC
属性初始化sharedInstance
类。初始化它的任何其他方式(例如,从故事板)将返回新实例。而且我认为将视图控制器定义为单例是坏的样式编码