これでしばらくの間スタックされていましたが、私はStackoverflowで多くの投稿を見てきましたが、問題。 "dict"は文字列に変換されるはずだから、NSString *myString = [NSNumber stringValue];
、[NSString stringWithFormat:@"%d", dict[@"id"]];
などを使用して、さまざまな方法で試してみたようです。ここでは、コードは次のようになります。- [__ NSCFNumber objectForKeyedSubscript:]:インスタンスに送信された認識されないセレクタ
for (NSDictionary *dict in self.params) {
NSString *value = dict[@"id"];
if (value) {
[parameters appendFormat:@"&ids[]=%@", value];
}
}
私が取得エラーは、この行にある:NSString *value = dict[@"id"];
は
コンソールに出力が示しています
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFNumber objectForKeyedSubscript:]: unrecognized selector sent to instance 0xb00000000000a313'
私はこの問題は、それが思われないということだと思います文字列に正しく変換する。この行は、dictをNSCFNumber(long)2609として示しています。どのように文字列に変換できますか?
あなたは必ず 'self.params'はONLY' NSDictionary'のオブジェクトが含まれています? 'NSNumber'オブジェクトがあり、その中に' NSDictionary'オブジェクトがないようです。 – Larme
@Larme ohh、self.paramsには1つのNSDictionaryオブジェクトと1つのNSNumberオブジェクトが含まれます – coderdojo
@Larmeどのように変換できますか? – coderdojo