2
NSUserdefaults에서 enum 매개 변수를 읽고 싶습니다. Userdefaults에 아무 것도 설정되어 있지 않은 경우 특정 값을 기본값으로 사용하고 싶습니다. 이 "if let"문을 사용하여 수행 한 것보다 더 나은 (더 우아한) 방법이 있습니까? 그리고이 같은 싱글 내가 그렇게 얼마나옵션을 사용한 좋은 프로그래밍 스타일
if GameState.learnLevel == Level.low {..}
를 사용하여 내 코드의 다른 부분에서 값에 액세스 할입니까?
class GameState {
var learnLevel:Level
enum Level:Int {
case low = 1,medium,high
}
class var sharedInstance: GameState {
return _SomeManagerSharedInstance
}
init(){
// load games state
let learnLevel = Level(rawValue: NSUserDefaults.standardUserDefaults().integerForKey("learnLevel"))
if let learnLevel1 = learnLevel {self.learnLevel = learnLevel1} else {self.learnLevel = Level.low}
}
다른 것은 좋아 보인다 후 휴식. NSUserDefaults에서 값을 가져오고 거기에 없을 수도 있고 거기에서 필요한 속성을 설정할 수 있습니다. 줄 바꿈 없이는 당신이하고있는 것을보기가 어렵습니다. – Fogmeister