モーダルトランジションがどのように機能するかについて真剣に理解していないので、最も簡単な答えをここから除外しないでください。
ストーリーボードに設定された独自のビュー コントローラーを持つ 2 つのビューがあります。メインメニューのボタンは、他のビューにつながります。このトランジションは、Ctrl キーを押しながらクリックしてモーダル トランジションを選択するだけで設定できます。また、他のビューからメインメニューに戻るボタンもあり、同様に設定されています。
これらのトランジションの理解を深めるために、メインメニューがロードされたときにサウンドを再生することを決定しましたが、最初に実行を押したときだけであり、他のビューに戻るボタンを押したときは再生しません。メニュービュー。
私のメニュービューには、プライベートプロパティBOOLがあります
@interface MainMenuViewController ()
@property BOOL menuSoundPlayed;
@end
そして私のviewDidLoad ...
- (void)viewDidLoad
{
[super viewDidLoad];
if (!self.menuSoundPlayed){
//sound setup code omitted for clarity
AudioServicesPlaySystemSound(mySound);
self.menuSoundPlayed = YES;
}
}
メインメニュービューが読み込まれるたびにメニューサウンドが再生される理由を誰かが理解するのを手伝ってもらえますか? menuSoundPlayed が実際には初期化されないことは認めますが、どこでそれを行うかさえわかりません。
補足: Apple がストーリー ボードのような便利な機能をすべて提供してくれるのは気に入っていますが、これらの背後にあるすべてのコードを簡単に確認できるようにしてほしいと思っています。 .
とにかく、ありがとう!