次のように動作するアプリがあります。
画面の上部はアプリの「主要な」部分であり、ユーザーが操作できる実際のコンテンツがここに表示されます。
画面の下部 (おそらく画面の高さの 1/4 程度) はナビゲーション ホイールです。ユーザーはこのホイールを回して、ディスプレイの上部を変更できます。回すと上部全体が別のものに置き換わります。
これら 2 つの部分は、フラグメントを使用して実装されます。下部 (ナビゲーション ホイール) は、回転可能なビュー階層を表示する単なる静的フラグメントです。上部(コンテンツ表示エリア)もフラグメントですが、ホイールを回すと他のフラグメントに切り替えることができます。
ここで私が望むのは、アプリの起動時に無料のコンテンツ セクションが表示されていることですが、ユーザーがホイールを他のコンテンツ セクションのいずれかに回すと、ウィンドウがポップアップしてコンテンツ表示領域をブロックし、「このモードをオンに購入する」と表示されます。グーグルプレイ。" このポップアップは、その背後にあるコンテンツ領域を明らかにブロックする必要があるため、ユーザーはポップアップの背後にある表示領域の一部を見ることができますが、Google Play トランザクションを完了する前に操作することはできません。コンテンツ領域のビューも同様にグレーアウトできるとよいでしょう。ただし、ユーザーが元の場所に戻ったり、別のコンテンツ セクションに移動したりできるように、画面の下部にあるナビゲーション ホイールをブロックしないでください。最上位のビュー階層をインタラクションからブロックするが、下位のビュー階層はそのままにしておくポップアップを作成するにはどうすればよいですか?
私が知る限り、PopupWindow クラスを使用して、背後の画面の一部のみをブロックするポップアップを作成することはできません。常にすべてをブロックしているようです。
こちらがデザインのイラストです。「P」は有料、「F」は無料です。2 番目の画面では、アプリはコンテンツ セクション (灰色のウィンドウの後ろ) を押しても無視されますが、ナビゲーション ホイールは回転できるはずです。
ありがとうございました。