0

私のアプリは、アプリのロード時にクラッシュし続けます。原因は次のとおりです。

cell.textLabel.text = [[self.searchResults objectAtIndex:[indexPath row]] valueForKey:@"payment_frequency"];

私が得るエラーは次のとおりです。

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary objectAtIndex:]: unrecognized selector sent to instance 0x8a538e0'

self.searchResultsは配列であるため、4つのオブジェクトが含まれています。各オブジェクトは次のとおりです。

    {
    50316462547c6dbdf2000005 =     {
    "created_at" = "2012-08-19T17:10:42-0500";
            id = 50316462547c6dbdf2000005;
            "payment_frequency" = "One Time";
            "user_id" = 1;
    };

    50316462547c6dbdf2000005 =     {
    "created_at" = "2012-08-19T17:10:42-0500";
            id = 50316462547c6dbdf2000005;
            "payment_frequency" = "One Time";
            "user_id" = 1;
    };

    50316462547c6dbdf2000005 =     {
    "created_at" = "2012-08-19T17:10:42-0500";
            id = 50316462547c6dbdf2000005;
            "payment_frequency" = "One Time";
            "user_id" = 1;
    };


    50316462547c6dbdf2000005 =     {
    "created_at" = "2012-08-19T17:10:42-0500";
            id = 50316462547c6dbdf2000005;
            "payment_frequency" = "One Time";
            "user_id" = 1;
    };

}

完全なコードは次のとおりです。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"SearchResultsViewCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    cell.textLabel.text = [[self.searchResults objectAtIndex:[indexPath row]] valueForKey:@"payment_frequency"];

    return cell;
}
4

1 に答える 1

0

エラーメッセージは、objectAtIndex:を配列ではなくディクショナリオブジェクトに送信していることを示しています。

あなたが持っている :

  • 間違った宣言または
  • メモリの問題(空きメモリの再利用)
于 2012-08-20T16:34:38.583 に答える