【android】オーバーレイでトップレイヤーにViewを表示する
公開日:
:
android
常にホーム画面や他のアプリより前面にViewを表示する方法です。
前面に透明のViewGroupを敷いて、子Viewを配置していこうかと思ったのですが、透明Viewがどうしてもタッチイベントを拾ってしまい、ホーム画面など背面を操作できなくなってしまいました。
必要なViewだけ用意して
params.gravity = Gravity.TOP | Gravity.LEFT;
の部分でレイアウトを作成しました。
WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE); WindowManager.LayoutParams params = new WindowManager.LayoutParams( int_width_px, int_height_px, WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL, PixelFormat.TRANSLUCENT); params.gravity = Gravity.TOP | Gravity.LEFT; wm.addView(anyView, params);
関連記事
-
【android】 webviewでassetsのリソースを使用する
webviewでassets内のリソースにアクセスするには file:///android_a
-
【android】アニメーション
Viewにアニメーションを付加する方法です。 目次 アニメーションの実行 de
-
【android】webviewでアプリ内にwebページを読み込む
webviewを使ってandroidアプリ内にwebページを読み込む定型文です。 //vie
-
【android】ネットワークの接続状況を確認する
コードから接続状況を確認。 ConnectivityManager co
-
【android】処理時間を計測する
パフォーマンスのリファクタリングを行うには処理時間の計測がかかせません。 SDK標準のクラスを使っ
-
【android】 年月だけのDatePicker
final DatePicker datePicker = new DatePicker(sel
-
【android】アプリ内課金を実装する
アプリ内課金のサンプルコードを解析します。 参考URL 公式API Android
-
【android】Activityとプロセスのライフサイクル
またもやライフサイクル周りでハマったのですが、Androidのライフサイクルは複雑で困ります。 G
-
[android] JSONのパースにかかる時間
リストデータなんかを保存したいというのはよくある要件だと思います。 DBは面倒だしカラム毎に集計す
-
ダイアログを表示する
カスタムアラートダイアログ private void showCustomAlert(A
- PREV
- 【android】サービスの実装
- NEXT
- 【android】標準の設定画面を作る