メニュー項目を押すと、そのサブ項目を含むポップアップが開くように実装されたメニューがあります。
タッチ スクリーンで実行している場合、ユーザーが指で同時に 2 つのメニュー項目に触れることがあります。これにより、メニュー項目の 1 つに、別のウィンドウがフォーカスされるまでリリースされないタッチ キャプチャがあり、アプリが停止しているように見えます。
どうすればこのようなケースを防ぐことができますか?
ありがとう
メニュー項目を押すと、そのサブ項目を含むポップアップが開くように実装されたメニューがあります。
タッチ スクリーンで実行している場合、ユーザーが指で同時に 2 つのメニュー項目に触れることがあります。これにより、メニュー項目の 1 つに、別のウィンドウがフォーカスされるまでリリースされないタッチ キャプチャがあり、アプリが停止しているように見えます。
どうすればこのようなケースを防ぐことができますか?
ありがとう
デリゲートを含むキューを使用できます。
コマンドをトリガーするときに、デリゲートをキューに追加します。次に、キューの最初のデリゲートを取得し、後でフラッシュします。これで、「コマンド」は 1 つだけになりました。
問題の原因を突き止めました。サブメニュー項目を表示するために使用されるポップアップで、StaysOpen が false に設定されていました。
これにより、Popup は入力をキャプチャするため、境界の外でクリックが行われたときに自分自身を閉じるタイミングを知ることができます。その StaysOpen プロパティを True に設定すると、問題が修正されました。