0

テーブルビューセルをクリックしてある画面から別の画面に移動する必要があり、セルのデータを2番目のビューのそれぞれのラベルに転送する必要があります。セグエを使用して2つのビューを接続しました。どうすればさらに進むことができますか?ありがとう

4

2 に答える 2

1

VC2を持つVC1があります。VC1がタップされると、セルからの情報とともに VC2 が表示されます。概略的には、VC1 で以下を実装します。UITableViewUITableViewCell

#pragma mark - Table view delegate for VC1
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    dataForVC2 = [vc1DataSource objectAtIndex:indexPath.row];
    [self performSegueWithIdentifier:segueFromVC1ToVC2 sender:self];
}

#pragma mark - View lifecycle
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:segueFromVC1ToVC2]) {
        vc2 = (VC2ViewController *)[segue destinationViewController];
        vc2.delegate = (id)self;
        vc2.whatIWantFromVC1 = dataForVC2;
    }
}

#pragma mark - VC2 delegate
- (void)VC2ControllerDidFinish:(VC2ViewController *)controller
{
    dataBackFromVC2 = controller.propertyForVC1;
}

これが、セグエを管理する方法です。また、VC2 のデリゲート プロトコルを実装する必要があります。これについては、WWDC 2011 の Apple ビデオ「ストーリーボードの概要」で詳しく説明されています。

理解しなければならない概念的な情報はたくさんありますが、UITableView datasource& delegateprotocolUINavigationController、およびseguesを理解すると、洗練された UI を簡単に実装できるようになります。幸せな 2 日間、Apple のドキュメントと WWDC のビデオにアクセスすれば、そのベールが取り除かれます!

于 2011-12-28T15:57:23.817 に答える
1

プロジェクト開発に飛び込む前に、Objective-C を学ぶ必要があります。Apple の本へのリンクは次のとおりです: http://developer.apple.com/library/mac/documentation/cocoa/conceptual/objectivec/objc.pdf

于 2011-12-28T13:29:54.510 に答える