Ios5 UITableViewCell中的UIButton,使用情节提要执行到另一个UIViewController的切换

Ios5 UITableViewCell中的UIButton,使用情节提要执行到另一个UIViewController的切换,ios5,uitableview,uibutton,uistoryboardsegue,Ios5,Uitableview,Uibutton,Uistoryboardsegue,在我的应用程序中,我有一个ParentViewController,其中包含多个元素。其中一个元素是UITableView 我使用在故事板中设计的动态原型单元设计了表格的单元 意思是,我在故事板中有一个UIViewController;在它里面,我有一个合适的视角;在UITableView中,我有一个原型单元 现在,我在Prototype单元中添加了一个UIButton,创建了另一个UIViewController(我们称之为ChildViewController),并用Segue将故事板中的U

在我的应用程序中,我有一个ParentViewController,其中包含多个元素。其中一个元素是UITableView

我使用在故事板中设计的动态原型单元设计了表格的单元

意思是,我在故事板中有一个UIViewController;在它里面,我有一个合适的视角;在UITableView中,我有一个原型单元

现在,我在Prototype单元中添加了一个UIButton,创建了另一个UIViewController(我们称之为ChildViewController),并用Segue将故事板中的UIButton和ChildViewController连接起来

当用户单击ui按钮时,我应该如何编写激活Segue的代码?

我成功地创建了表本身,并在动态单元格中包含了数据(除了UIButton之外,还有一些UILabel),但我不知道如何正确地将UIButton连接到代码


我不想使用UITableView默认的“选择”功能,因为我希望在动态单元格中有几个按钮-每个按钮都将派生不同的序列到不同的ChildViewController。

以下是我解决相同问题的方法。希望这会有帮助

为此,您可以将指向UITableViewController的指针传递给自定义单元格的初始化方法,并将其存储在其中:

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
            // ...
            CDTrackCell *cell = [tableView dequeueReusableCellWithIdentifier:strCellTableIdentifier];
            CDTrack *currTrack = [self.fetchedResultsController objectAtIndexPath:indexPath];

            [cell configureView:currTrack inTableViewController:self];

            return cell;
   }
在自定义UITableViewCell类中保存指针:

- (void) configureView:(CDTrack*)track
 inTableViewController:(CDTracksViewController*)_tvc
{
    self.tvc = _tvc;
    // ...
}
然后,您可以在点击按钮时执行一个序列:

- (IBAction)buttonAddToTracklistTapped:(UIButton *)sender {
    [self.tvc performSegueWithIdentifier:@"showAddToTracklist" sender:self];
}

还有更好的主意吗?

另一个很好的方法是利用“委托”模式,我现在就要试试:)