0

Swift プログラミングを行ってからしばらく経ちましたが、最後に NSUserDefaults をいじってから、いくつかの変更が加えられたようです。

私はいつもアンラップで問題を抱えていましたが、これらの変更が加えられてから、さらに混乱しています。グループ NSUserDefaults に格納した double に変数を設定しようとしています。これは私のコードです:

    percent = defaults?.doubleForKey("percentage")

私は次のようないくつかのことを試しました:

    percent = defaults?.doubleForKey("percentage") as Double

しかし、私は解決策を見つけることができないようです。現時点では値がアンラップされていないことを示しているだけです。何か助けはありますか?

4

1 に答える 1

1

defaultsはオプションであるため、これを使用する式はすべてオプションになります。オプションのバインディングでアンラップするだけです:

if let defaults = defaults {
    percent = defaults.doubleForKey("percentage")
}

または、nil にならないことが 110% 確実な場合defaults(または、nil の場合にアプリをクラッシュさせたい場合) は、次のように置き換えて強制アンラップを使用?!ます。

percent = defaults!.doubleForKey("percentage")
于 2015-01-21T22:43:50.323 に答える