IBAction があり、次のようになります。
- (IBAction) onPressed: (id) sender {
[self openMyDelegateToSeeIfIAmReady];
if (AmIReady == YES)
{
[self doMyWork];
}
}
現在、これは機能しません。はブール値であり、 inAmIReady
に変わります。事は、になる前に、このコードの塊ですYES
openMyDelegateToSeeIfIAmReady
AmIReady
YES
if (AmIReady == YES)
{
[self doMyWork];
}
呼び出され、doMyWork
決して呼び出されません。このメソッドが終了するまで待機させるにはどうすればよい[self openMyDelegateToSeeIfIAmReady]
ですか?
編集:
これが私が持っているものですopenMyDelegateToSeeIfIAmReady
- (void) openMyDelegateToSeeIfIAmReady
{
MyViewController *mvc = [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil];
mvc.delegate = self;
[self presentModalViewController:mvc animated:YES];
[mvc release];
amIReady = YES;
}
このデリゲート (MyViewCrontroller) でも、ユーザーの入力が必要です。ユーザー入力が入力されている場合は、実行する必要がありますdoMyWork
。