2

このボタンをオーバーライドして、ユーザーが電話の LED フラッシュをオン/オフできるようにする、Flashlight-X という市場のアプリがあります。何をしても、そのアプリ内のカメラ ボタンを押しても、カメラ アプリは表示されません。どうやってこれを達成しますか?

つまり、カメラ ボタン イベントをサブスクライブする方法は知っていますが、既定のアクションが発生しないようにするにはどうすればよいでしょうか? 同様に、デフォルトの動作をオーバーライドします。

4

3 に答える 3

2

MSDN には、これを説明する記事があります:
Windows Phone でハードウェア カメラ シャッター ボタンにアクセスする方法

于 2013-02-10T19:02:39.293 に答える
1

WP7 では、Assembly.Load を使用して Microsoft のサポートされていない (内部使用のみ) "Microsoft.Phone.Media.Extended" DLL にアクセスし、リフレクションを使用してカメラにアクセスし、シャッターが押されたイベントを処理することでこれを行うことができます。残念ながら、この DLL は WP8 には存在せず、他のメディア API に置き換えられました。これにより、そのアセンブリの複雑さの一部 (リフレクションは不要) が取り除かれますが、重要な機能の一部 (カメラを使用できるなど) も取り除かれます。ロック画面の下のボタン)。

WP8 では、AudioVideoCaptureDevice.OpenAsync を使用してカメラ デバイスにアクセスできますが、カメラ ボタン イベントは CameraButtons という静的クラスに移動されました。これらのイベントを使用して、アプリ内のカメラ ボタンの動作をオーバーライドできます。詳細については、http: //msdn.microsoft.com/en-us/library/windowsphone/develop/hh202963 (v=vs.105).aspx をご覧ください。

于 2013-06-01T02:27:45.360 に答える
-1

特別なボタン (カメラ、戻る、開始、音量アップ、音量ダウン、検索) のデフォルトの動作を上書きすることはできません (すべきではありません)。

よろしく

于 2013-02-10T13:06:15.807 に答える