3

我有两个分组的部分,每个部分都包含一个单元格视图。单击时,我需要一个单元格转到一个场景,另一个单元格转到另一个。我已经设置了从主视图控制器到其他两个场景的转场,现在我需要指示程序在单击正确的单元格时触发转场。

我认为这必须发生在我的代码的这个区域,每个部分都是自定义的。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    UITableViewCell *serverLocCell = [tableView dequeueReusableCellWithIdentifier:@"serverLocation"];

    switch (indexPath.section) {
        case 0:
            serverLocCell.textLabel.text = testLocation;
            serverLocCell.detailTextLabel.text = @"Change";
            break;
        case 1:
            serverLocCell.textLabel.text = @"Speed Test";
            serverLocCell.detailTextLabel.text = @"Change";
            break;
        default:
            break;
    }

    return serverLocCell;
}

我想我也需要这个功能:

self preformSegueWithIdentifier

但是不能完全确定正确的代码/位置。

两个 segue 都有自己的标识符。

4

1 回答 1

0

您认为需要 performSegueWithIdentifier 是正确的。您需要此方法以编程方式触发 segue,这在您的情况下是必需的。

您将需要表视图委托 didSelectRowAtIndexPath 来调用 performSegueWithIdentifier,并根据所点击的单元格使用正确的标识符:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.section == 0) {
        [self performSegueWithIdentifier:@"YourFirstIdentifier" sender:nil];
    }
    else {
        [self performSegueWithIdentifier:@"YourSecondIdentifier" sender:nil];
    }
}
于 2013-05-30T14:24:53.830 回答