私は独自のカスタムフォトギャラリーコントロールを作成しました。このコントロールでは、ユーザーが写真をタップして大きなバージョンに移動したり、その他の必要なアクションを実行したりできます。
このギャラリーを保持しているUIViewControllerにセレクターが含まれるように、これを実行したいと思います。
- (IBAction)photoThumbnailClicked(id)sender
{
// Enlarge the photo here
}
どういうわけか、フォトギャラリーオブジェクトにビューコントローラーとセレクターの参照を保持したいので、各写真のサムネイルボタンが生成されるときに、ターゲットを次のように設定できます。
[thumbnail addTarget:self.target
action:self.action
forControlEvents:UIControlEventTouchUpInside];
私は現在、このような参照を保持していますが、メモリの問題がある可能性があると信じる理由があるため、これが最善の方法かどうかはわかりません。
PhotoGallery.h:
@interface PhotoGallery : UIScrollView
@property UIViewController *target;
@property SEL action;
- (void)setTarget:(UIViewController*)viewController
withAction:(SEL)action;
@end
PhotoGallery.mのsetTargetメソッド:
- (void)setTarget:(UIViewController*)target withAction:(SEL)action
{
self.target = target;
self.action = action;
}
これはこれを行うための最良の方法ですか?そうでない場合は、代わりに何をすべきですか?
助けてくれてありがとう!