問題タブ [android-windowmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
151 参照

android - Androidのウィンドウマネージャーからレイアウトを非表示にするために開かれた他の組み込みアプリを知るにはどうすればよいですか?

Androidウィジェット(すべての画面に浮かぶ)からウィンドウマネージャーに1つのレイアウトを添付しています。(ブラウザ、設定など)のようなアプリが開いた場合、ウィンドウマネージャからそのレイアウトを隠したいと思います。他のアプリ (ブラウザなど) が起動したことを知るにはどうすればよいですか?

0 投票する
5 に答える
23597 参照

android - フローティング ビューを Android ウィンドウ マネージャーに追加し、システム/ハードウェアの戻るボタン イベントをリッスンする方法

ウィンドウマネージャーにフローティングビューを表示するサービスがあります(WINDOW_TYPE_ALERT権限を使用)。それを表示してアクションを実行できます。しかし、具体的な質問が 2 つあります。

  1. フローティングビューの実装について
  2. ビューを閉じることができるように、システムの戻るボタン イベントをリッスンする方法。

実装:

マニフェストで、次の権限を追加しました。

アラーム イベントをリッスンするブロードキャスト レシーバーがあります。イベントを受けて、フローティングビューを表示するサービスを開始しています。以下は、ビューを作成するために使用しているコードです。

ユーザーがビューに対して何らかのアクションを実行するたびに、ウィンドウ マネージャーからビューを削除し、サービスを停止しています。

私が知りたいのは、これが問題にアプローチする正しい方法であるか、それともより良い方法があるかということです。また、LayoutParams を変更する必要がありますか、それともそのままにしておく必要がありますか?

次に、SYSTEM BACK/HARDWARE BACK ボタンを押すイベントが発生したときに、このフローティング ビューを閉じたいと思います。これを行う方法についての指針は役に立ちます。

理解を深めるために、フローティング ビューのスクリーンショットを添付します。

フローティング ビュー

0 投票する
2 に答える
3328 参照

android - オーバーレイ ビューを削除できません

アップデート

私はこれを修正することができました.問題はダイアログであり、関連するものはブロードキャストレシーバーから開始できましたが、実行中のアクティビティがビューの前に終了するため、お勧めできません.

fbメッセンジャー、truecallerなどのオーバーレイを実装しようとしています.

addView は正常に動作します。これがログです

「ビューがウィンドウマネージャーにアタッチされていません」

プログラムでもレイアウトを作成しようとしましたが、うまくいきませんでした

生成されたレイアウトのIDもわかりません

0 投票する
1 に答える
3332 参照

android - 非表示のステータス バーを受け取る/サービスでフル スクリーン アクティビティ イベントに入る

ウィンドウ マネージャー (Facebook のチャット ヘッドのようなもの) にいくつかのビューを追加するサービスがあります。このビューは、カメラ アプリを使用している場合でも、常にすべての上に表示されます。ビューを非表示にできるように、何らかのアクティビティ (カメラやビデオ プレーヤーなど) がフル スクリーンを使用していることを知ることはできますか?

編集:

View.OnSystemUiVisibilityChangeListener と呼ばれるものがありますが、API 11 が必要です。私のターゲットは 9 ですが、これはまさに私が必要としているもののようです。API 9 に代わるものはありますか?