1. ホーム
  2. ios

[解決済み] ビューを指定し、そのビューコントローラを取得するには?

2022-04-26 09:56:08

質問

へのポインタを持っています。 UIView . どのようにすれば、その UIViewController ? [self superview] は別の UIView を使用することはできませんが UIViewController ということですね?

どのように解決するのですか?

そうです。 superview は、あなたのビューを含むビューです。ビューは、どれがそのビューコントローラであるかを知ってはいけません。なぜなら、それはMVCの原則を破ることになるからです。

一方、コントローラは、どのビューを担当するのかを知っています ( self.view = myView ) で、通常、このビューは処理するメソッドやイベントをコントローラに委譲します。

一般的には、ビューへのポインタの代わりにコントローラへのポインタを指定し、コントローラが制御ロジックを実行したり、ビューに何かを渡したりすることになります。