我试图根据UserDefaults
启用UISegmentedController
索引。但我的问题,我不知道如何启用索引,如果函数返回true。根据用户默认值启用分段控制器索引
我有一个主视图控制器,它有segmentedController
。
可以说我有4个索引。 0被使能并且1,2,3,4被禁止。现在如果得分是>= value
,我想启用索引1.
我知道我可以启用和禁用segmentAt像这样:segmentedControl.setEnabled(true, forSegmentAt: 1) // can also be false
但我该如何将它实现到函数中。
这就是我想要做的事:
class func checkIfEligibleForNextDifficulty(key: String, score: Int) -> Bool{
let userDefaults = UserDefaults.standard
if userDefaults.integer(forKey: key) >= score{
return true
}
return false
}
,我使用它是这样的:
if Util.checkIfEligibleForNextDifficulty(key: "diff2", score: 8){
//Here I want to enable the index 1
}
什么是这种变薄的最佳方法?我应该声明一些全局变量吗?
你能解释一下,你将如何使用这种方法启用或禁用分段控制器索引?如果我想使用userdefaults,我想我只需要在initing中添加它?顺便说一句,我不能使用这个,因为我有每个级别的viewcontroller。并且每个级别都有它自己的userDefault值,分数为:。 –
级别可以与用户默认值有关,因此一旦您想从分数初始化级别,您将根据您的需求查询用户默认值。想象一下,你有这个'级别(得分:45)'那么你可以启用这样的水平: '让ALEVEL =级别(得分:45)。 aLevel.enabledLevels(){的forEach在 \t segmentedControl.setEnabled水平( true,forSegmentAt:level.rawValue) }' – Ricowere