2

したがって、 UITableViewControllerにdidSelectRowAtIndexPathメソッドがあります。

TableViewは、 NavigationControllerによって制御されるUIViewControllerに移動します。

NavigationControllerによって呼び出されるクラスにindexPath.rowを送信したいのですが、別のクラスにパラメーターを送信する方法はありますか?

私のアプリスキームは次のとおりです。

TabBarController ---> NavigationController ---> TableViewController ---> UIViewController

4

1 に答える 1

0

ストーリーボードを使用している場合:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    UITableViewCell *cell = sender;
    // Make sure your segue name in storyboard is the same as this line
    if ([[segue identifier] isEqualToString:@"YOUR_SEGUE_NAME_HERE"])
    {
        // Get reference to the destination view controller
        YourViewController *vc = [segue destinationViewController];
        NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];

        // Pass any objects to the view controller here, like...
        [vc setIndexPath:indexPath];
    }
}

そうしないと

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.row == 0) {
        YourViewController *vc = [[YourViewController alloc] initWithNibName:@"YourViewController" bundle:nil];
        [vc setIndexPath:indexPath];
    }

}
于 2012-09-01T18:51:36.230 に答える