0

我设法创建了我的 uitableview,其中充满了 sql 测验数据。现在我正在尝试创建一个选择取消选择方法。选中单元格后,我想按下开始按钮并选中选中的选项,我想出现一个新的游戏屏幕,其中包含来自所选类别的混合测验问题。这可能行得通吗?

这是一些代码

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

        UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
        if ([self isRowSelectedOnTableView:tableView atIndexPath:indexPath]) {
        [self.selectedCells removeObject:indexPath];
        cell.accessoryType =UITableViewCellAccessoryNone;
        }else{
            [self.selectedCells addObject:indexPath];
            cell.accessoryType =UITableViewCellAccessoryCheckmark;
            }

            NSNumber * selectedRow = [NSNumber numberWithInteger:indexPath.row];
                NSLog(@"%@", selectedRow);
                startButton.tag = selectedRow?10:0;
    }

这是我对按钮操作的尝试

- (IBAction)startAction:(id)sender
{
if([sender tag] == 10){
    PlayViewController * controller = [[PlayViewController alloc] initWithNibName:@"PlayViewController" bundle:nil];
    [self presentViewController:controller animated:YES completion:nil];
}

标签只是按钮的尝试。我真正想要的是读取选定的行号,并以此为播放视图控制器创建 sql 语句。可能吗?先感谢您。

4

1 回答 1

0

我不完全理解您要做什么。

但是在 didSelectRowAtIndexPath 中,您不需要再次定义单元格。您有 indexPath.row 值,该值指示选择了表的哪一行。您可以存储该值以供以后使用。您还可以存储选定的记录。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

   selectedRow = indexPath.row;  // store the table row number
      // or
   selectedRecord=[fullTableArray objectAtIndex:indexPath.row];  // store the value
于 2013-10-09T07:14:43.703 回答