SwiftのiOS Xcodeプロジェクトを「継承」しました。私はSwiftでプログラミングしたことがなく、以前はXcodeを使っていました。あるユーザーアカウントのプロジェクトを別のユーザーアカウントにコピーし、git repoにチェックインしました。UserDefaults.standard.string()はnilを返す
今、私はこれ(コピー、許可?)が正しく設定を読み取ることができない原因になっている可能性があります。 UserDefaults.standard.string(forKey: "pref_Foo")
はSettings.Bundle's
Root.plist
にはpref_Foo
という識別子がありますが、nil
が返されるためです。 このアプリは以前から働いていたので、突然どこから来たのか分かりません。 私はXcodeに慣れていないので、今のところ私はアプリケーションにデバッグしてUserDefaults.standard.string(forKey: "pref_Foo")
がnil
であることを確認しました。
どうすればこの問題に近づけることができますか? ありがとうございました!
EDIT:これは、あなたが最初のアプリを削除して、再度インストールし、検証したコードの下に使用する必要があります... ViewController.swift
override func viewDidLoad() {
super.viewDidLoad()
loadSettings()
に
}
func loadSettings()
{
if(UserDefaults.standard.object(forKey: "pref_Foo") == nil)
{
printf("Error")
}
}
* userdefaults *データは、デバイスやシミュレータのsandboxディレクトリに保存され、コード内には格納されません。 – Itachi
私はおそらくxcodeがplistファイルを読み取れない場合、それがアプリケーションにコンパイルされないと考えました。 – tzippy
10.3.2と10.3.3の間に何が起こりましたか? – tzippy