Ios 是否可以将singleton与ViewController一起使用?
我试图使用singleton,但没有得到相同的实例 我是这样用的Ios 是否可以将singleton与ViewController一起使用?,ios,swift2,singleton,Ios,Swift2,Singleton,我试图使用singleton,但没有得到相同的实例 我是这样用的 class RCHDownloadTVCC: UITableViewController { private static let sharedInstance = RCHDownloadTVCC() static func defaultInstance() -> RCHDownloadTVCC { return sharedInstance } ......} 试试这个 class RCHDownloadTVCC:
class RCHDownloadTVCC: UITableViewController {
private static let sharedInstance = RCHDownloadTVCC()
static func defaultInstance() -> RCHDownloadTVCC {
return sharedInstance
}
......}
试试这个
class RCHDownloadTVCC: UITableViewController {
static let sharedInstance = RCHDownloadTVCC()
......}
在其他课程中学习:
let rchdownloadSingletone = RCHDownloadTVCC.sharedInstance
Upd:Ofc您需要确保仅通过
sharedInstance
属性初始化RCHDownloadTVCC
类。任何其他初始化它的方法(例如,从故事板)都将返回新实例。我认为将视图控制器定义为单例是糟糕的编码风格视图控制器永远不应该是单例。绝对不会
视图控制器根据需要创建,不再需要时销毁。单件是在第一次需要的时候创建的,并且从未被销毁
例如,将viewcontroller设置为单例将阻止viewDidLoad正常工作。除此之外,您永远不知道不需要使用同一个视图控制器两次 我正在制作一个下载管理器,如果这不是使用singleton的好方法,那么如何在没有访问权限的情况下将新下载添加到我的view controller中?@Raffi在共享单一数据模型对象中执行下载。当您需要显示下载内容时,请在新的视图控制器实例中编写下载内容。学习MVC模式。我可以看到现在发生了什么,我正在使用故事板,所以它肯定会是一个不同的实例,谢谢你提醒我