この関数を使用して、Xcode4.3のビューを切り替えています。
[self performSegueWithIdentifier:@"NextView" sender:self];
ページ間でいくつかのパラメータを渡したいのですが。どうやってやるの?
この関数を使用して、Xcode4.3のビューを切り替えています。
[self performSegueWithIdentifier:@"NextView" sender:self];
ページ間でいくつかのパラメータを渡したいのですが。どうやってやるの?
performSegueWithIdentifier:sender:
ビューコントローラーが呼び出した後
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
新しいViewControllerに設定するいくつかのプロパティがあると仮定します。
if ([[segue identifier] isEqualToString:@"NextView"]) {
MyViewController *myVC = [segue destinationViewController];
myVC.propertyToSet = // set your properties here
}
この質問には、View Controller間でデータを渡すことについて非常に適切で正しい説明があります。
これが Pfitz からの回答ですが、例を使用して、Objective-C を初めて使用する人にとって理解しやすいようにしました。
destinationViewController.h ファイルで、変数のプロパティ設定を追加して、ソースの controller.m ファイルから値を「受け取る」ようにします。
@property (nonatomic) int billIdReceivingVote;
destinationViewController.h を sourceViewController.m ファイルにインポートします。
// VOLViewController.m
#import "VOLVoteViewController.h
prepareForSegue
メソッドを sourceViewController.m ファイルに追加し、変数を渡します
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
VOLVoteViewController *myDestinationViewController = [segue destinationViewController];
// myDestinationViewController.variable = sourceViewController variabe
myDestinationViewController.billIdReceivingVote = [self.idOfBillSelected intValue];
}