2012-02-19 11 views
1

親オブジェクトフォームポップオーバーにメッセージを送信そのような私のポップオーバービューを表示それは2つのView Controllerを持って、私のiOSアプリケーションの使用が</p> <p>をストーリーボード

*CGRect buttonFrame = CGRectMake(10., 10., 120., 50.); 

oneButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[oneButton setImage:[UIImage imageNamed:[NSString stringWithFormat:@"someImage.png", img]] forState:UIControlStateNormal]; 
[oneButton setTag:img]; 
[oneButton setFrame:buttonFrame]; 
[oneButton addTarget:self action:@selector(pressButton:) forControlEvents:UIControlEventTouchUpInside]; 

[self.view addSubview:oneButton];* 

このボタンのアクション:

メインビューコントローラ上のボタンを持って、それは私がアプリケーションを実行するたびにプログラミング作成しまし
*- (void) pressButton:(id)sender { 

popoverViewController *popoverFrame = [self.storyboard instantiateViewControllerWithIdentifier:@"myPopoverView"]; 

popoverWithObjects = [[UIPopoverController alloc] initWithContentViewController:popoverFrame]; 

[popoverWithObjects presentPopoverFromRect:[sender frame] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:NO]; 

}* 

これからの状況は、私は自分のボタンにメッセージや結果を送信できません。 私のプログラムボタン(注 - 私はこのボタンの送信者のみを持っています)は、ポップオーバーが何らかの結果を返すか、またはポップオーバーのオブジェクトの何らかのアクションが何かを送信するもの(文字列など) または別の言葉でポップオーバービューのボタンのようなオブジェクトとやり取りするとき、親のボタンを変更したいタイトルラベル

答えて

0

デリゲートを使用する必要があります。このような質問に対する私の答えは、SOからチェックしてください。

編集:Storyboardのtutorialにリンクし、パターンの使用を委任します。そして、これに代わる私の元の答えSO

+0

私はそれを試しました。私はストーリーボードのアプリで代表団を作ることはできません...とにかくあなたのお返事ありがとうございます。そして、リンクのために、それは本当に有用です –

+0

親オブジェクト(私の場合はボタン)の委任を行う方法 –

+0

私はあなたがappDelegateと他のクラスのデリゲートパターンの間で混乱していると思います。 appDelegateはストーリーボードでは使用できませんが、デリゲート・パターンをコールバックに使用することはまだ有効です。 – user523234

0

あなたの望むことをするためにあなたのメインビューコントローラーに関数を書くのはどうですか?その後、その関数をポップオーバーから呼び出しますか? (すなわち、メインビューコントローラのIDをpopoverに送信するために 'segueの準備'を使用し、ポップオーバーからメインビュー上の関数を呼び出す)

関連する問題