2012-02-03 16 views
1

画面内の特定のオブジェクトにフォーカスがあることを検出したときに何かをするmac(とiphone以降)のアプリケーションを作成することは可能ですか?OS Xのフォーカスを見つけよう

意味、プログラムはバックグラウンドで実行され、フォーカス(またはカーソル)が編集ボックスにあることが検出されると、プログラムは何かを実行します。

うまくいけば、私は自分自身を明確にしました! ありがとう!

答えて

2

アクセシビリティフレームワークを使用してMacでこれを行うことができます。

手持ちのデバイスを手動で有効にする必要があり、すぐに実装されるAppleのサンドボックス制限のため、Mac App Storeでアプリケーションを配布することはできません。

iOSでは、特定のデリゲートメソッド(textViewDidBeginEditing:など)を使用して、すべての要素ではなく特定の要素にフォーカスを検出できます。つまり、ユーザーがほとんどの時間iOSアプリをナビゲートするためにタップを使用すると、簡単なタップ処理がはるかに優れたアプローチのように思えます。

+0

私以外の実行中のアプリケーションでtextViewDidBeginEditingや任意のタップハンドラを使用できますか? –

+0

いいえ、jailbrokenではないiPhoneでは、アップルはアプリが他のアプリに干渉することを厳しく禁止しています。 – 0x90

+0

これはどうやってjailbrokenデバイスで行うことができますか? –

2

iPhoneでは、自分のアプリ内でのみフォーカスを検出できます。バックグラウンドから他のアプリを観察する方法はありません。

Macでは、0x90と書いてありますが、最も近いのはアクセシビリティAPIです。 UIElementInspector sample codeをお使いになると助かります。

+0

返信いただきありがとうございます。私は要素インスペクタを調べます –

関連する問題