【发布时间】:2015-04-15 21:05:27
【问题描述】:
在我正在制作的应用程序中,我试图跟踪数组的哪个索引是当前索引。跟踪此信息很重要,如果所选索引与已加载的索引相同,它将防止多余的 API 调用。
我制作了一个带有静态 var 的 Struct 来跟踪当前数组索引,但它似乎只在应用程序的一页上保存该值。
我的应用有一个带有 3 个标签的标签栏。在选项卡 1 上这工作正常,但是在选项卡 2 上设置了 Struct var,但是如果我转到选项卡 1 或 3 然后返回到 2,它会返回到 -1(这是“默认值”)。
我的结构是这样构建的:
struct currentDefault {
static var cDefault:Int = -1
}
然后我像这样在每个页面上创建它:
var setIndex = currentDefault.cDefault
我的检查功能在每个页面上看起来都一样:
override func viewWillAppear(animated:Bool) {
var index = Load.defaultEnterprise("defaultEnterprise")
if index != self.setIndex || self.setIndex == -1 {
loadPlayerList()
currentDefault.cDefault = index
}
}
在上面的示例中,“索引”是从用户当前的默认设置加载的。 在初始页面加载时 setIndex 将为 -1,这很好,但之后 Struct 的静态 var 应该保存当前索引。
有没有更好的全局跟踪应用程序所有页面之间的数组索引?如果一个结构是要走的路,有什么理由让它在每个页面加载时默认?
【问题讨论】: