0

JSON フィードから、オブジェクトNSMutableArrayを保持する を作成します。NDDictionaryこれを表示するようになると、値UITableViewが原因でクラッシュします。したがって、これらのオブジェクトを配列から<null>正確に削除するにはどうすればよいかを知る必要があります。"<null>"

以下は、JSON から返されたものの出力です。

Service Names: (
"Nether Edge to Woodhouse",
"Barnsley to Rotherham",
"Woodhouse to Nether Edge",
"Rotherham to Barnsley",
"Doncaster to Worksop",
"Worksop to Doncaster",
"Penistone to Barnsley Interchange",
"Barnsley Interchange to Penistone",
"<null>",
"Barnsley to Rotherham",
"Rotherham to Barnsley",
"<null>",
"Buttershaw to St Bedes RC Upper School",
"St Bedes RC Upper School to Buttershaw",
"<null>",
"Sandholme Drive to Ilkley GS",
"Ilkley GS to Sandholme Drive",
"<null>",
"Barnsley to Rotherham",
"Rotherham to Barnsley"
)

私は次のようなことを試しました:

[serviceNames removeObject:@"<null>"];
[serviceNames removeObject:[NSNull null]];

[serviceNames removeObjectsIdenticalTo:@"<null>"];
[serviceNames removeObjectsIdenticalTo:[NSNull Null]];

"<null>"これまでに失敗したことはすべて、この配列からオブジェクトを削除する簡単な方法を教えてください。

4

5 に答える 5

0

この方法で配列からすべての Null を削除できます

for(uint i=0;i<serviceNames.count;i++)
{
    if([[serviceNames objectAtIndex:i] isKindOfClass:[NSNull class]])
        [serviceNames removeObjectAtIndex:i];
}

次に、テーブルをリロードします

于 2013-11-27T19:04:23.873 に答える
0

これを試してください
。注: これはテストしていません。

tempArray は実際の配列です。

NSMutableArray *mainArray = [[NSMutableArray alloc]init];
for (int i = 0; i < [tempArray count]; i++) {
    id obj = [tempArray objectAtIndex:i];
    if (![obj  isKindOfClass:[NSNull class]]) { // or if (![obj  isKindOfClass:[[NSNull null]class]]) {
        [mainArray addObject:obj];
    }
}

NSLog(@"%@",mainArray);
于 2013-11-27T18:42:41.890 に答える