0

ストーリーボードを使用して、[追加]ボタンを備えたViewController1を1つ作成しました。[追加]をクリックして、ピッカーのみを含むPopoverView(ViewController2内)を表示します。

だから私のPickerViewのデリゲートはViewController2にありますが、ViewController1に入れたいです...これを行う簡単な方法はありますか?

ありがとう

4

2 に答える 2

1

ViewController1のprepareForSegueメソッドで、次のことを試してください。

if ([segue.identifier isEqualToString:@"MySegue"])
{
    ViewController2* vc2 = segue.destinationViewController;
    vc2.pickerView.delegate = self;
}

基本的に、セグエの呼び出しが終了する前に、ピッカービューのデリゲートをViewController1に割り当てます。

もちろん、これは、pickerviewがプロパティとして設定されていることを前提としています。

于 2012-05-05T22:30:27.363 に答える
0

ViewController1.hファイルで、インターフェイスヘッダーをこれに変更します。

@interface ViewController1 : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>;

これにより、ViewController1がデリゲートを担当します。次に、必要なメソッドをViewController1.mファイルに追加します。また、次のようにして、UIPickerViewのデリゲートをViewController1のインスタンスに設定します。

[yourPickerview setDelegate:ViewController1];
于 2012-05-05T21:28:53.887 に答える