AirPlay を使用してアプリを開発していますが、既存の多数のカスタム UI 要素と互換性を持たせるために、メイン画面のタッチを外部画面の UI のタッチとして機能させる方法が必要です。UI 要素を再構築することは、あるビューから別のビューにタッチを変換する方法を見つけるよりも桁違いに困難です。
外部画面には、操作を表す一種のマウス ポインターが表示されます。これは、ユーザーが操作を行うために画面上で参照ポイントが必要になるためです。これは、ユーザー インターフェース ガイドラインのハードルを作成する可能性がありますが、その山にたどり着いたら、その山を越えます。願わくば、このアイテムをマウスらしくないようにする方法を見つけられることを願っています。ユーザーは、一種のトラックパッドとしてデバイスを操作します。
タッチイベントをキャッチするためにサブクラス化された「sendEvent」を持つデバイス画面上のウィンドウを使用しています。入力を受け取る必要があるビューのビュー階層を手動でたどろうとしています。話したいビューを見つけることは難しくありません。UIControl ベースのクラスでは、「sendActionsForControlEvents」を呼び出して、コントロールに適切なメッセージを送信できます。これには多少の愛撫が必要かもしれませんが、今のところそれは主な問題ではありません。
touchesBegan、touchesMoved などの UI イベントについては、UIEvent 情報を偽造する適切な方法がありません。UIEvent がない限り、これらの関数を呼び出すことはできず、UIEvent オブジェクトを作成する方法がないようです。sendEvent からの UIEvent には、(少なくとも) セカンダリ スクリーンのポインター位置と一致する位置がないため、単純に渡すだけでは、必要なものが得られません。
この情報を合成する正当な方法はありますか?