2012-04-30 19 views
1

このIBActionから次のメソッドを呼び出すにはどうすればよいですか?私はNSLog(@ "クリック")の代わりにprepareForSegue:メソッドを呼び出す必要があります。ここでこのIBActionから次のメソッドを呼び出すにはどうすればよいですか?

はIBActionです:助けを

// Do some customisation of our new view when a table item has been selected 
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    // Make sure we're referring to the correct segue 
    if ([[segue identifier] isEqualToString:@"ShowMoreInfo"]) { 

     // Get reference to the destination view controller 
     MoreDetailViewController *mdvc = [segue destinationViewController]; 


     [mdvc setSelectedItemName:[NSString stringWithFormat:@"%@", placeName.text]]; 
     [mdvc setSelectedItemAddress:[NSString stringWithFormat:@"%@", placeFormattedAddress.text]]; 

     [mdvc setSelectedItemWeb:[NSString stringWithFormat:@"%@", placeWebsite.text]]; 
     [mdvc setSelectedItemRating:[NSString stringWithFormat:@"%@", placeRating.text]]; 
    //  [mdvc setSelectedItemDistance:[NSString stringWithFormat:@"%@", placeDistance.text]]; 

    } 
} 

感謝:

- (IBAction) annotationViewClick:(id) sender { 
    NSLog(@"clicked"); 
} 

ここでの方法です!

答えて

1

prepareForSegue:メソッドが自動的に呼び出されます。

セグを実行するには、performSegueWithIdentifier:と を使用してください。 [self performSegueWithIdentifier:@"showGuide" sender:self];

この場合、Xcode Interface Builderのセグに識別子を割り当てる必要があります。

+0

驚くばかり!本当にありがとう – hanumanDev

0

ID試みる何か

UIStoryBoardSegue *segue = ... setup the one you want 
[self performSelector:@selector(prepareForSegue:) withObject:seque afterDelay:0]; 

ようIVEはストーリーボードで働いたことはない - しかし、あなたは、セレクタを呼び出す方法をthatsの:)あなたはセグエを実行するときに

+0

ありがとうございました。私は - (void)prepareForSegue:メソッドにあるコードを実行したいだけです。 UIStoryBoardSegue * segueを設定することなく、そのメソッドを呼び出すだけの方法はありませんか? segueは既に(void)prepareForSegueに設定されています: – hanumanDev

+0

メソッド 'prepareForSegue:'は明らかにsegueで呼び出す必要があるので、インスタンス化する必要があると思います。(allocではなく、参照を取得します) –

関連する問題