NSArrayM objectAtIndex:]: 索引 2 超出边界 [0 .. 1]'



所以我试图编辑我用 PFQuery(parse.com) 创建的数组。我需要检查它,然后从中删除对象,然后将其显示在 UITableView 中,但是当我运行它时,我收到此错误

- (PFQuery *)queryForParse
{
    PFQuery *query1 = [PFQuery queryWithClassName:self.parseClassName];
    //[query1 selectKeys: [NSArray arrayWithContentsOfFile:[ NSString @"checkMark"]]];
    [query1 whereKey:@"location" nearGeoPoint:[PFGeoPoint geoPointWithLatitude:[LocationController sharedSingleton].locationManager.location.coordinate.latitude longitude:[LocationController sharedSingleton].locationManager.location.coordinate.longitude] withinMiles:50];
    [query1 findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if (!error){
            placesArray = [[NSMutableArray alloc] initWithArray:objects];
            NSMutableArray *toDelete = [NSMutableArray array];
            for (PFObject *tempObject in placesArray){
                if ([tempObject objectForKey:@"checkMark"] == nil){
                    [toDelete addObject:tempObject];
                }
            }
            [placesArray removeObjectsInArray:toDelete];
            NSLog(@"%@", placesArray);
        }
        [placesTable reloadData];
    }];
    return query1;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    PlacesTableCell *cell = (PlacesTableCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil){
        cell = [[PlacesTableCell alloc] init];
    }
    PFObject *tempObject = [placesArray objectAtIndex:indexPath.row];
    cell.message.text = [tempObject objectForKey:@"message"];
    return cell;
}
听起来你可能

只需要添加那个" numberOfRowsInSection: "方法。

例如:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    // assuming only one section and one table here
    return([placesArray count]);
}

相关内容

最新更新