4

私は iPhone のコーディングには比較的慣れていませんが、本物の (願わくは) 販売可能なアプリに取り組むところまで来ました。

しかし、まだ謎に包まれていることの 1 つは、レスポンダー チェーンです。すべての本はそれを参照していますが、そのチェーンを変更する方法を説明している本はまだ見つけていません. もう 1 つの興味深い点は、IB で First Responder アイコンをクリックすると、小さな接続ボックスが表示され、何かに接続するためのあらゆる種類の選択肢が表示されることですが、それについての説明は見つかりませんでした。

このレスポンダープロセスの詳細な説明を知っている人はいますか?

4

2 に答える 2

3

以下は、レスポンダー チェーンに関する Jeff Lamarches の説明です。すべてを網羅しているわけではありませんが、正しい軌道に乗って考えるようになるはずです。

于 2009-12-06T05:04:11.770 に答える
2

レスポンダー チェーンは、さまざまなオブジェクトがイベントを処理する機会を与えられる順序です。簡単な例として、NSApp の NSWindow の NSView にボタンがあるとします。ボタンがクリックされたとき。ボタンには、イベントを処理する最初の機会があり、次にそのコントローラー、次に NSView、そのコントローラー、NSWindow、そのデリゲート、NSApp およびそのデリゲートの順に処理されます。このようにして、最初にオブジェクトにイベントを処理する機会が与えられ、次にそのコントローラー/デリゲート、次にオブジェクトのコンテナーというようになります。もっと複雑なケースもあります。

オブジェクトは、-(void)respondToFictionalEvent:(UIEvent *)event を実装することによってイベントを処理します。これが発生した場合、イベントは「消費」されます (チェーンのさらに上に自動的に渡されることが防止されます)。

于 2010-01-14T22:46:12.233 に答える