2017-01-08 10 views
0

クエリからキー名を取得しようとすると、以下のエラーが発生します。それをViewControllerによって使用のintとしてキャストします。NSArrayMから番号を取得できません

Could not cast value of type '__NSArrayM' (0x1073ebdb0) to 'NSNumber' (0x1069f3488). 

これは、クエリの行である:印刷時

tempVarLDS = object.value(forKey: keyName) 

これは、それが配列

(
    7 
) 

を返します。私は

tempvarLDS[0] 

またはいずれかの通常の容疑者を介してアクセスすることはできません。任意のアイデアどのようにこのintを取得するには?

+0

を動作しない理由を私は見ていない 'tempvarLDS [0]'? – OOPer

+0

なぜSwift配列の代わりにNSArrayを使用していますか? – rmaddy

+0

これは構文解析クエリ – Pippo

答えて

1

NSNumbersのNSArrayの場合は、整数の配列としてキャストできます。

// Cast it 
let tempvarLDS:[Int] = object.value(forKey: keyName) as! [Int] 

// Loop 
for num in tempvarLDS { 
    print(num) 
} 

それはあなたがしようとしたときに何が起こった

+0

の結果です。これはありがとうございました。 – Pippo

+0

確かに!喜んで助けてください。 – Pierce

関連する問題