IOS故事板 - 显示关于表格单元格选择的不同视图

hel*_*ikh 3 uitableview ios uistoryboardsegue

我是ios编程的新手.我有多个视图控制器.我首先显示tableView控制器,并且它之前有一个导航控制器..我想根据所选的单元显示特定的视图控制器..我已将tableView控制器设置为动态原型Cell为1并且我有segue连接从表到我的视图控制器名称之一APP1ViewController 我有另外两个控制器名称APP2和APP3 ..如何连接它们,以便在特定的单元格特定的视图控制器加载.这是显示单元格的代码..目前我的表中有一个部分和三行

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    static NSString *CellIdentifier = @"AppCell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    switch (indexPath.row)
    {
        case 0:
            cell.textLabel.text = @"APP 1 ";
            cell.detailTextLabel.text = @"Detail of App 1...";
            break;
        case 1:
            cell.textLabel.text = @"App2";
            cell.detailTextLabel.text = @"Detail of App 2 app...";
            break;
        case 2:
            cell.textLabel.text = @"App3";
            cell.detailTextLabel.text =
            @"Detail of App 3...";
            break;

        default:
            cell.textLabel.text = @"Unkown";
            cell.detailTextLabel.text = @"Unknown";
            break;
    }

    return cell;
}
Run Code Online (Sandbox Code Playgroud)

Phi*_*lls 7

从具有表的控制器而不是从表或单元本身创建三个segue.为每个segue提供唯一标识符.在tableView:didSelectRowAtIndexPath:,调用表视图控制器的performSegueWithIdentifier:sender:方法并选择与所选行匹配的标识符.


Hem*_*ora 5

试试这个,

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"your storyboard" bundle:nil];
    UIViewController *viewController = nil;      
    switch (indexPath.row) {
    case 0:
       viewController = [storyboard instantiateViewControllerWithIdentifier:@"viewController1"];
        break;
    case 1:
        viewController = [storyboard instantiateViewControllerWithIdentifier:@"viewController2"];
        break;
    case 2:
        viewController = [storyboard instantiateViewControllerWithIdentifier:@"viewController3"];
        break;

    default:
        viewController = [storyboard instantiateViewControllerWithIdentifier:@"viewController4"];
        break;
     }
    [[self navigationController] pushViewController:viewController animated:YES];
    }
Run Code Online (Sandbox Code Playgroud)