2012-02-27 15 views
1

URLからNSMutableDictionaryにPLISTを読み込もうとしています。plistをNSMutableDictionaryに読み込みます。

autos = [[NSMutableArray alloc] init]; 

[autos addObject:[[NSMutableDictionary alloc]initWithObjectsAndKeys:@"Auto 1", @"name", @"Auto.png", @"image", @"Klassiker", @"description" , nil]]; 

これが機能する前に

コード。しかし今、私はPLISTを使いたいです。そして、私はこれをこのようにしようとしています。

autos = [[NSMutableArray alloc]initWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://dl.dropbox.com/u/9358444/auto.plist"]]]; 

ありがとう。

PLIST http://dl.dropbox.com/u/9358444/auto.plist

+0

PLISTを使用しようとするとアプリケーションがクラッシュし、tableviewにautoを含む行を開いてしまう問題があります。 – halloway4b

+1

クラッシュログを提供できると便利でしょうか? – Ravin

答えて

1

あなたのプロパティリストには辞書が含まれていますが、配列をインスタンス化するためにそれを使用しようとしています。代わりに、次の操作を行います。

NSMutableDictionary *autos = [[NSMutableDictionary alloc] initWithContentsOfURL: 
           [NSURL urlWithString:@"http://dl.dropbox.com/u/9358444/auto.plist"]]; 
+0

OK。ありがとう。しかし、その後、私はNSMutable辞書に自動車を持っています。私はNSMutableArrayでそれ以上のものを必要とします。 – halloway4b

+0

それを '-addObject:'を使って可変配列に追加してください。 – Caleb

+0

ありがとうございます。私はそうした:NSMutableDictionary * cars = [[NSMutableDictionary alloc] initWithContentsOfURL: [NSURL urlWithString:@ "http://dl.dropbox.com/u/9358444/auto.plist"]]; [auto addobject:cars]しかし、今では自動車のテーブルビューに行くと行がありますが、emtpyです。この空の行をクリックすると、キャッチされた例外が発生しました。 'NSInvalidArgumentException'、理由: *** - [NSPlaceholderString initWithString:]:nil argument ' – halloway4b

0

私はまだOPにコメントを追加するかどうかはわかりません、サイトに新たなんです。最初に辞書にロードしてから、変更可能な配列に転送してください

+0

どのように転送できますか?どのようにして辞書の情報を配列に入れることができますか? – halloway4b

+0

[theArray addObject:theDictionary] - それ以上のことはできません。辞書はキーペアであるため、配列はインデックスベースです。 – DdD