3

TableView から、セルのコンテンツに基づいて、TableView または DetailView (新しいセグエ) を動的に表示したいと考えています。TableView から別の DetailViews への 2 つのセグエと、TableViewCell から TableView への 1 つのセグエをセットアップします。

performSegueWithIdentifier:(以下を参照)を使用して実装をほぼ完了しましたが、1 つの困難な問題が残っています: DetailView を呼び出し[self dismissModalViewControllerAnimated:YES];た後、空の TableView に戻ります。からストーリーボードのセグエUITableViewCellが行われるためだと思います。戻るボタンをクリックすると、元の (親) TableView データに戻ります。

この作品への提案はありますか?

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSLog(@"%s", __PRETTY_FUNCTION__);
    NSString *type = [[self.dataController objectInListAtIndex:[self.tableView indexPathForSelectedRow].row] valueForKey:@"cell_type"];
    NSLog(@"cell_type: %@", type);
    if([[segue identifier] isEqualToString:@"DetailSegue"])
    {
        UIViewController *detailViewController = [segue destinationViewController];        
        detailViewController.game = [self.dataController objectInListAtIndex:[self.tableView indexPathForSelectedRow].row];
    } else if ...
    } else if([[segue identifier] isEqualToString:@"TableViewSegue"]){
    if([type isEqualToString:@"TableView"]){
    //Create child ViewController, a custom ViewController with custom initWithId:Title:
    CategoryViewController *categoryViewController = [[segue destinationViewController] initWithId:categoryId Title:categoryTitle];
    }
}

}

4

1 に答える 1

1

テーブルビューに複数のセルを作成します。それぞれに独自の識別子があります。次に、各セルをそれぞれの詳細ビュー コントローラーに接続します。セルを独自のView Controllerに接続することもできます(特定のセルのみのドリルダウン機能を作成します)。

それで全部です...

于 2012-06-04T22:37:57.957 に答える