根据swift中传递的值保存数据

时间:2014-12-31 09:46:18

标签: ios xcode swift nsuserdefaults

我试图节省完成每个级别所需的时间。所以我正在寻找一种更好的方法来保存数据,我有100个变量适用于所有级别,即leveltime1,levetime2 ....等等.leveltime100 我有这个代码不能正常工作

var leveltime : [Int] = [leveltime1, levetime2, leveltime3......leveltime100]
defaults.setInteger("leveltime[Currentlevel -1]")
leveltime[Currentlevel -1] = defaults.integerForKey("leveltime[Currentlevel -1]")

所以这不起作用。还有其他方法吗?除了if else和switch语句?

1 个答案:

答案 0 :(得分:1)

假设您处于等级3并希望节省您需要的时间

var level = 3
var time = 21

现在您要将此安全保护为默认值,为此您生成一个键(字符串)

var key = "leveltime-\(level)"

并存储时间

var defaults = NSUserDefaults.standardUserDefaults()
defaults.setInteger(time,key)

进行。

在某个时间点检索此内容

var level = 3
var key = "leveltime-\(level)"
var defaults = NSUserDefaults.standardUserDefaults()
var time = defaults.integerForKey(key)