テーブルビューセルをクリックしてある画面から別の画面に移動する必要があり、セルのデータを2番目のビューのそれぞれのラベルに転送する必要があります。セグエを使用して2つのビューを接続しました。どうすればさらに進むことができますか?ありがとう
質問する
1056 次
2 に答える
1
とVC2を持つVC1があります。VC1がタップされると、セルからの情報とともに VC2 が表示されます。概略的には、VC1 で以下を実装します。UITableView
UITableViewCell
#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
& delegate
、protocol、UINavigationController
、および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 に答える