0
私の問題はいくつかのifsとelseでコードがありますが、コードに何も入力されず、なぜわかりません。ここで:私のコードはifをスキップしていますが、elseはXcodeのelseを終了しますobj-c
id msgWithFormat;
NSArray *allkeys = [dict allKeys];
NSMutableString *msg = [[NSMutableString alloc]init];
for (int i=0; i<allkeys.count; i++) {
NSMutableString *listOfErrors = [[NSMutableString alloc]init];
//NSMutableString *lbl = [[NSMutableString alloc]init];
NSMutableDictionary *currentError = [dict objectForKey:allkeys[i]];
NSMutableDictionary *isGroup;
if ([currentError isKindOfClass:[NSMutableDictionary class]]) {
isGroup = [currentError objectForKey:@"group"];
}
if ([isGroup count] == 0) {
NSArray *lbls;
if ([currentError isKindOfClass:[NSMutableDictionary class]]) {
lbls = [currentError objectForKey:@"msg"];
[listOfErrors appendString:[currentError objectForKey:@"label"]];
[listOfErrors appendString:@":"];
for (int j=0; j < lbls.count; j++) {
[listOfErrors appendString:lbls[j]];
[listOfErrors appendString:@","];
}
[msg appendString:listOfErrors];
[msg appendString:@"\n"];
} else if([[dict objectForKey:@"groupError"] isEqualToString:@"group 1"]) {
lbls = [currentError objectForKey:@"msg"];
[listOfErrors appendString:[currentError objectForKey:@"label"]];
[listOfErrors appendString:@":"];
for (int j=0; j < lbls.count; j++) {
[listOfErrors appendString:lbls[j]];
[listOfErrors appendString:@","];
}
[msg appendString:listOfErrors];
[msg appendString:@"\n"];
}
dictのは、私がチェックしたNSMutableDictionaryですが、私は理由として見当もつかないグループの場合はそれがあればisGroupに入ると値チェックにもないことはありません。
dict __NSDictionaryM * 3 key/value pairs 0x799f5390
すべてのヘルプ:ここ
はdictのでしょうか?
EDIT1:私は、この行にブレークポイントを置いている
、
if ([currentError isKindOfClass:[NSMutableDictionary class]]) {
それはそれを通して行くと、他には行かないだけでジャンプし、すべてのコードのうち:
if ([currentError isKindOfClass:[NSMutableDictionary class]]) {
lbls = [currentError objectForKey:@"msg"];
[listOfErrors appendString:[currentError objectForKey:@"label"]];
[listOfErrors appendString:@":"];
for (int j=0; j < lbls.count; j++) {
[listOfErrors appendString:lbls[j]];
[listOfErrors appendString:@","];
}
[msg appendString:listOfErrors];
[msg appendString:@"\n"];
} else if([[dict objectForKey:@"groupError"] isEqualToString:@"group 1"]) {
// lbls = [currentError objectFo rKey:@"msg"];
//
// [listOfErrors appendString:[currentError objectForKey:@"label"]];
// [listOfErrors appendString:@":"];
//
// for (int j=0; j < lbls.count; j++) {
// [listOfErrors appendString:lbls[j]];
// [listOfErrors appendString:@","];
//
// }
// [msg appendString:listOfErrors];
// [msg appendString:@"\n"];
//
}
NSMutableString * listOfErrorsにブレークポイントを設定してもブレークしませんか? –
ブレークポイントを設定しましたか?もしそうなら、実行はどこで終了するのですか? – PeejWeej
はい、そこにブレークはifsだけスキップし、はい私はブレークポイントを設定しましたが、isKindOfClassを飛び越しています –