代码之家  ›  专栏  ›  技术社区  ›  griotspeak

为什么这些代码不起作用?

  •  1
  • griotspeak  · 技术社区  · 16 年前
    - (void)tableView:(UITableView *)tableView
    didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    
     if ([indexPath section] == 0) {
      switch ([indexPath row]) {
    
       case 0:
        [self renameExercise];
        [[self tableView] deselectRowAtIndexPath:indexPath 
                animated:YES];
        break;
    
       case 1:
        EditRootNoteViewController *newController = [[EditRootNoteViewController alloc] initWithNibName:@"EditNoteView"
                               bundle:nil];
        [newController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
        [newController setDelegate:self];
        [self presentModalViewController:newController
              animated:YES];
        [newController release];
        break;
    

    3 回复  |  直到 16 年前
        1
  •  2
  •   Community Mohan Dere    9 年前
        2
  •  2
  •   Alejandro    16 年前

    尝试将代码放入块中:

    ...
      switch ([indexPath row]) {
    
       case 0:
        [self renameExercise];
        [[self tableView] deselectRowAtIndexPath:indexPath 
                animated:YES];
        break;
    
       case 1: {
        EditRootNoteViewController *newController = [[EditRootNoteViewController alloc] initWithNibName:@"EditNoteView" bundle:nil];
        [newController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
        [newController setDelegate:self];
        [self presentModalViewController:newController animated:YES];
        [newController release];
        } break;
      }
    

        3
  •  1
  •   W Dyson    16 年前

    这是你的全部交换声明吗?如果是这样,你就忘了

    default:
    break;
    

    确保你的问题包括完整的方法,或者至少是一个完整的方法,以便我们更容易提供帮助。

    编辑: