ストーリーボードを使用して、[追加]ボタンを備えたViewController1を1つ作成しました。[追加]をクリックして、ピッカーのみを含むPopoverView(ViewController2内)を表示します。
だから私のPickerViewのデリゲートはViewController2にありますが、ViewController1に入れたいです...これを行う簡単な方法はありますか?
ありがとう
ストーリーボードを使用して、[追加]ボタンを備えたViewController1を1つ作成しました。[追加]をクリックして、ピッカーのみを含むPopoverView(ViewController2内)を表示します。
だから私のPickerViewのデリゲートはViewController2にありますが、ViewController1に入れたいです...これを行う簡単な方法はありますか?
ありがとう
ViewController1のprepareForSegueメソッドで、次のことを試してください。
if ([segue.identifier isEqualToString:@"MySegue"])
{
ViewController2* vc2 = segue.destinationViewController;
vc2.pickerView.delegate = self;
}
基本的に、セグエの呼び出しが終了する前に、ピッカービューのデリゲートをViewController1に割り当てます。
もちろん、これは、pickerviewがプロパティとして設定されていることを前提としています。
ViewController1.hファイルで、インターフェイスヘッダーをこれに変更します。
@interface ViewController1 : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>;
これにより、ViewController1がデリゲートを担当します。次に、必要なメソッドをViewController1.mファイルに追加します。また、次のようにして、UIPickerViewのデリゲートをViewController1のインスタンスに設定します。
[yourPickerview setDelegate:ViewController1];