Почему этот блок не работает? - PullRequest
0 голосов
/ 26 октября 2011

У меня есть этот блок, но по какой-то причине UITableView не перезагружается.Есть идеи почему?Я вижу в консоли NSLog of Save.

-(void)addRoutine
{    
    PFObject *routine = [[PFObject alloc] initWithClassName:@"Routine"];
    [routine setObject:self.entered forKey:@"name"];    
    [routine saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
        if (!error) {
            NSLog(@"Save!");
            [self.tableView reloadData];
        } else {
            // There was an error saving the rotuine.
        }
    }];   
}

enter image description here

1 Ответ

0 голосов
/ 26 октября 2011

Ах, хорошо, теперь я вижу ошибку.Вы не можете использовать себя в блоке.Потому что я это блок.Итак, вы вызываете -tableView для блока, который не может вернуть ничего полезного.Вы должны определить что-то вроде __block id blockSelf = self вне блока, а затем использовать [blockSelf tableView] внутри блока.Сделайте NSLog(@"%@",self) внутри и снаружи блока.Вы увидите, что это не тот же объект.

edit:

Это просто чушь, которую я сказал здесь, и, очевидно, не решает проблему.

...