我有一个存储在类中的数组,该类可从Internet下载其对象。我的 class 设置如下:

class StockManager {
    var managerStock: [Dictionary<String, String>] {
        return downloadStockFromDatabase()
    }
    ...
}

我可以像这样从项目中的其他Swift文件访问managerStock,但是无论我以前是否使用过该变量,它总是会再次重新下载股票(即,调用函数downloadStockFromDatabase):
let stockManager = StockManager()
print(stockManager.managerStock)

如何确定managerStock仅下载一次并且可以在我的任何文件中使用它?

最佳答案

这是正确使用软件模式的问题。我会建议:

  • 使StockManager成为一个单例,因此您将始终访问它的相同实例。
  • 初始化它,例如在AppDelegate中,即确保整个运行时
  • 都保持 Activity 状态
  • 提示:懒惰地调用managerStock,即仅在您确实需要时才调用,而不是作为初始化
  • 的一部分

    关于ios - 从所有Swift文件访问数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35292045/

    10-11 12:10