0

xcodeを使用してiOS5用のプロジェクトに取り組んでいます。ARCがオンになっているストーリーボードを使用する

イベント情報を含むEventという名前のクラスがあります。ListViewController.mファイルにリンクされたストーリーボード上のTableViewがあります。また、「Detail」と呼ばれるストーリーボード上のビューと、(リンクされている)DetailViewController.mファイルも作成しました。

現在、ListViewController.mで、次の関数を使用しました。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    DetailViewController *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"detail"];
    [self.navigationController pushViewController:detail animated:YES];
}

リストビューの項目は、eventsという名前のlistviewcontrollerの変数で構成されています。

私がやりたいのは、detailviewを初期化するときに、そのリストアイテムに結合されたイベントを渡し、ラベルのテキストにDetailViewController.mの正しい情報を入力できるようにすることです。

このようにしたいと思います。イベントの他の表現(マップ上など)もあり、すべてのイベントにこの詳細ビューを使用したいと思います。

これを最適に設定するにはどうすればよいですか?

4

1 に答える 1

0

プッシュを実行する前に、「DetailViewController」に「Event」プロパティを追加し、それをコントローラーに割り当てます。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    //Get here the selected event fron the datasource and assign it to yourSelectedEvent

    DetailViewController *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"detail"];

    [detail setEvent: yourSelectedEvent];

    [self.navigationController pushViewController:detail animated:YES];
}

次に、それを使用してテキストをラベルに配置できます。

于 2012-07-16T13:21:18.920 に答える