EXC_BAD_ACCESS в [строке indexPath] - PullRequest
       1

EXC_BAD_ACCESS в [строке indexPath]

2 голосов
/ 18 января 2012

Я настраиваю ячейки таблицы. У меня есть этот код (упрощенный), который дает мне EXC_BAD_ACCESS при попытке доступа [indexPath row]

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    static NSString *CellIdentifier = @"WCFPictureCell";
    static NSString *CellNib = @"WCFPictureCell";
    WCFPictureCell *cell = (WCFPictureCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        NSArray *nib = [[NSBundle mainBundle] loadNibNamed:CellNib owner:self options:nil];
        cell = (WCFPictureCell *)[nib objectAtIndex:0];
    }
    NSLog(@"iph    %@", indexPath);
    NSLog(@"iphrow %@", [indexPath row]);
    return cell;
}

Что я делаю не так?

Спасибо

Ответы [ 2 ]

10 голосов
/ 18 января 2012

row метод NSIndexPath возвращает NSInteger.Это примитивный тип, а не объект.

Таким образом, вы не можете напечатать его, используя %@.

То, что вы хотите:

NSLog( @"iphrow %i", [ indexPath row ] );

Вы получаетеошибка сегментации, потому что %@ используется для указателя на объект.Когда вы передаете целое число, NSLog попытается напечатать объект по адресу памяти, указанному целочисленным значением.

0 голосов
/ 18 января 2012

попробуйте этот код (немного поменяйте код).Ваша ошибка в [indexPath row], которая возвращает int use (% i not% @)

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    WCFPictureCell *cell = (WCFPictureCell *)[tableView dequeueReusableCellWithIdentifier:@"WCFPictureCell"];
    if (cell == nil) {
        NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"WCFPictureCell" owner:self options:nil];
        cell = [topLevelObjects objectAtIndex:0];
    }
NSLog(@"iph    %@", indexPath);
NSLog(@"iphrow %i", [indexPath row]);
return cell; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...