UIImagePickerControllers (カメラとメディア ピッカーの両方) を表示するために使用するボタンがいくつかあるビューがあります。UIImagePickerControllers を作成するとき、以下のコードでわかるように、それらに異なる名前を付けてモーダリで表示します。
- (void) startMediaBrowserFromViewControllerForBGImage {
UIImagePickerController * mediaUIForBGImage = [[UIImagePickerController alloc]init];
//i also set a bunch of different settings here, but it doesn't matter for this purpose
mediaUIForBGImage.delegate = self;
[self presentModalViewController: mediaUIForBGImage animated:YES];
}
コードでもわかるように、デリゲートを に設定しました。self
これは、すべての UIImagePickerControllers で行うことですが、問題は、デリゲート メソッドで、どの UIImagePickerController がデリゲート メソッドを呼び出したかをどのように知るかです。メディアで実行する必要があるアクションは、UIImagePickerControllers ごとに異なるためです。デリゲート メソッドではUIImagePickerController
パラメーターを取得しますが、常にメソッド (ピッカー) から割り当てられた名前を持ちます。どの UIImagePickerController を参照するかを知るために何を使用できますか?