2012-09-25 11 views
7

イムは、二重に値を代入しようとして次のコードを使用して:イニシャライズ「ダブル」互換性のないタイプの「ID」の発現と

double distanceFormat = [self.runsArray[indexPath.row] valueForKey:@"runDistance"]; 

をしかし、私は、次のエラーを取得しておいてください。

Initialising 'double' with an expression of incompatible type 'id' 

しかし、私は値が倍であることを知っています!これを行う方法はありますか?あなたは、私はそれが仕事だと思う、それは二重であることを確認している場合は

double distanceFormat = [[self.runsArray[indexPath.row] valueForKey:@"runDistance"] doubleValue]; 

+0

は、辞書のself.runsArray配列ですか?私はあなたが最後にdoubleValueを追加する必要があると想像してください – rooster117

+0

はい、それは文字列で動作します。私はそこにダブルがあると私に信じてxcodeを得ることができません! –

+0

[[self.runsArray [indexPath.row] valueForKey:@ "runDistance"] doubleValue];を試してみてください。 – rooster117

答えて

12

は、あなたが試みることができます。

+0

すごく、ありがとう! –

6

使用するNSNumber

NSNumber *mynumber = [somedictionary valueForKey:@"runDistance"]; 

あなたがするNSNumberを持っていたら、あなたはあなたが好きに変換することができ、f.ex:

int i = [mynumber intValue]; 
関連する問題