2016-05-07 3 views
-1

これは前に述べたとおりですが、正解が見つからないようです。私は辞書で構成される配列を持っています。私はswift 2.2を使用していて、 "for"ループでこれらの辞書にアクセスしようとしています。しかし、私はそれらにアクセスしようとしているときに私はSourceKitServiceのクラッシュを取得します。以下の私のコードです:SourceKitService forループの辞書付きXcode 7.3でクラッシュする

for index in productArray{ 
     var Dict = index["id"] 
    } 

私は入力してポイントを取得しています:index["私はエラーとXcodeクラッシュを取得します。私は自分のプロジェクトの中で他の辞書を使っていますが、うまく働いています。たぶん私のコードで何かが間違っています。私はわかりません。

productArrayはNSMutableArrayです。

Iは、以下の方法辞書を用いて加算することによりproductArrayを作成した:

productArray.addObject(dictionary) 

をこれがproductArrayアレイの一例です。

(
{ id = 1; price = "2.00"; "product_name" = "A"; }, 
{ id = 2; price = "2.00"; "product_name" = "B"; } 
) 

私はまた、次のことを試してみました:

   for index in 1...productArray.count{ 
       var dict = productArray.objectAtIndex(index) 
       print(dict[ 
      } 

しかし、再び、私はそれがクラッシュし、このポイントに到達したとき。私が ""入れようとするとクラッシュします。

誰かがそれを理解できれば嬉しいです。ありがとうございました。

+1

'productArray' *が実際に辞書の配列である場合、あなたのコードは動作します。あなたの質問を編集して、 'productArray'(または少なくともXcodeがそれを言うタイプ)のプリントを表示してください。 – Moritz

答えて

-1

私は、dictの初期化の後ろに以下を追加して問題を解決しました。

まず私が持っていた:

var dict = productArray.objectAtIndex(index) 

を次に:

var dict = productArray.objectAtIndex(index) as! [String:String] 

これは私の問題を解決し、正常に動作します。

+1

私の問題に対する解決策は、私が見つけたものでした。問題は、コード構造の具体的な方法に関連していました。私のコード全体を別のものに変更しなければならないのであれば、私の質問に対する答えにはならないでしょう。ありがとうございました。 – user3882720

+1

私はそれをupvotedしました!あなたが答えたので、それはすでに初めからあきらめられていました。 – user3882720

関連する問題