Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 表视图didSelectRowAtIndexPath,仅在选择“第二次单击”后有效_Ios_Objective C_Cocoa Touch_Uitableview - Fatal编程技术网

Ios 表视图didSelectRowAtIndexPath,仅在选择“第二次单击”后有效

Ios 表视图didSelectRowAtIndexPath,仅在选择“第二次单击”后有效,ios,objective-c,cocoa-touch,uitableview,Ios,Objective C,Cocoa Touch,Uitableview,我已经配置了一个表视图,这样当用户点击该行时,它将根据特定单元格的名称移动到一个新视图。但是,当我第一次单击某个单元格时,它什么也不做,而当我单击下一个单元格时,它将表现为我单击了第一个单元格 例如,我有头盔、棍子和手套。如果我按下头盔,什么也不会发生。然后,如果我按Stick,它将为头盔而不是棍子执行didSelectRowAtIndexPath。有没有关于为什么会发生这种情况的建议 //Tapping to change on row - (void)tableView:(UITableVi

我已经配置了一个表视图,这样当用户点击该行时,它将根据特定单元格的名称移动到一个新视图。但是,当我第一次单击某个单元格时,它什么也不做,而当我单击下一个单元格时,它将表现为我单击了第一个单元格

例如,我有头盔、棍子和手套。如果我按下头盔,什么也不会发生。然后,如果我按Stick,它将为头盔而不是棍子执行didSelectRowAtIndexPath。有没有关于为什么会发生这种情况的建议

//Tapping to change on row
- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    NSLog(@"%@", cell.textLabel.text);
    if([cell.textLabel.text isEqualToString:@"Helmet"])
    {
        [self performSegueWithIdentifier:@"toHelmetView" sender:indexPath];
    }
}


//Segue control, fetch helmet and send it
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString:@"toHelmetView"])
    {
        // Fetch the selected object
        //EquipmentCategory *o = [_frc objectAtIndexPath:[self.tableView indexPathForSelectedRow]];

        // Configure the next view + controller
        HelmetView *nextVC = (HelmetView *)segue.destinationViewController;

        nextVC.title = @"Helmet";
        nextVC.model = self.model;
        nextVC.h = [self.model helmetForPlayer:self.p];
    }

}

这是因为您实现了
didderowatinexpath
,而不是
didSelectRowAtIndexPath

我也有同样的问题,但我有正确的func didSelectRowAt..还有什么可能呢?我不知道人们怎么会犯
didSelectRowAt
这个简单的错误,但我想告诉大家,即使你用
didSelectRowAt