2017-11-16 5 views
0

私はswift/iosプログラミングの新人です。私は設定で小さなアプリを作成しましたが、私は価値を読み取ることができません。swift Xcodeアプリケーション設定の読み取り

 UserDefaults.standard.register(defaults: [String : Any]()) 

    let settings = UserDefaults.standard; 

    let k = Bundle.main.infoDictionary!; 

    let b = settings.dictionaryRepresentation() 

    let val3 = Bundle.main.object(forInfoDictionaryKey: "digit_preference") 


    let value2 = settings.string(forKey: "digit_preference") 

私は私の電話に適切に自分のアプリケーションの設定を表示することができます

Bundle.main.InfoDictionaryまたはUserDefaults.standard.dictionaryRepresentation(の私の設定「digit_preference」)を見つけることができません。 (2に設定された数字) Bundle.settings

+0

私は値(上記の変数val3、値2)にアクセスしようとすると「なし」を返します – Nite

+0

値にアクセスするためのキーとして「digit_preference」を使用していますが、そのようなキーは表示されませんあなたの 'plist'では、キーが" Identifier "である文字列値です。また、そのキーと値のペアは "Preference items"配列の中にあるDictionaryの中にあるので、まず配列のその要素を取得してから値を取得する必要があります。 –

答えて

0

ルート構造がディクショナリであるため、最初にファイルデータをディクショナリにキャストする必要があります。これはもちろん、あなたが私たちに示しているファイルが実際に.plistファイルである場合、以下は.plistファイルにアクセスする方法ですが、最初の手順はアプリバンドルの他のほとんどのファイルタイプにも共通しています。あなたが何をしたいかに応じて、第二のステップは何異なって(たとえばなど.TXT、.json、から)..です

ので、同様:

guard let idForResource = Bundle.main.path(forResource: "pListFilename", ofType: ".plist"), 
     let dict = NSDictionary(contentsOfFile: idForResource) as? [String: Any] else { 
     return } 

次に、あなたのようなdictを通じて変数にアクセスするだろう他の辞書から。

関連する問題