从单元格导航到右侧视图

时间:2013-09-19 16:14:55

标签: objective-c xcode uitableview

我有这段代码从我的tableview导航到另一个tableview。但它并没有导航到正确的tableview。它似乎创建了另一个导航到的视图,而不是我想要去的故事板上的视图。 这是因为我创建了一个对象吗?

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

    ValjKupongViewController *vk = [[ValjKupongViewController alloc]init];
    [self.navigationController pushViewController:vk  animated:YES];
}

如何以正确的方式编写此代码,以便导航到具有ValjKupongViewController类的storyboard中的视图?

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *) indexPath
{
    [self performSegueWithIdentifier: @"My Custom Segue" sender: self];
}

在你的StoryBoard中

第1步 CtrlDrag鼠标来自 左侧是View Controller左侧View Controller

View Controller上的

left =您正在转换的视图控制器FROM

View Controller上的

right =您正在转换的视图控制器TO

第2步选择push作为Segue的类型

enter image description here

第3步现在,您的视图控制器将在它们之间产生搜索(如下所示)

enter image description here

第4步您需要命名Segue才能识别它。点击Segue,然后转到属性检查器并设置Identifier。 (在示例中,它设置为My Custom Segue。 确保这与上面的代码相同。

即。 [self performSegueWithIdentifier: @"My Custom Segue" sender: self];

enter image description here

  

这是因为我创建了一个对象吗?

是的,每次调用ValjKupongViewController时,您都在分配和初始化didSelectRowAtIndexPath对象。使用这行代码

ValjKupongViewController *vk = [[ValjKupongViewController alloc]init];

然后使用此行转换到它 [self.navigationController pushViewController:vk animated:YES];