8

android 4.0より前では、TYPE_SYSTEM_OVERLAYを使用して任意のアプリを作成してオーバーレイし、FLAG_WATCH_OUTSIDE_TOUCHを使用してタッチを取得できました... android 4を使用すると、タッチを受信できなくなります。

基本的に、アイデアはこのアプリに従い ます。http://www.appbrain.com/app/smart-taskbar-%28sidebar%29/com.smart.taskbar アプリを開いたままにすることも、常に最上位に置くこともできます。どのアプリでも実行できます。

私はAndroid4.0で使用するための情報やソースコードをどこでも探しましたが、運がありません...今..4.0でもこれを実行するアプリがあることは確かです...まだ方法があります。何か案は?

4

1 に答える 1

8

Android4.0で動作する完全なサンプルアプリをここで見つけました

ここにハイライトがあります:

オーバーレイビューを作成するには、LayoutParamsを設定するときに、タイプをTYPE_SYSTEM_OVERLAYに設定しない でください。

代わりに、TYPE_PHONEに設定してください。

次のフラグを使用します。

FLAG_NOT_TOUCH_MODAL

FLAG_WATCH_OUTSIDE_TOUCH

FLAG_NOT_TOUCH_MODAL <<これは非常に重要です。これがないと、オーバーレイにフォーカスが移り、ソフトキー(ホーム、メニューなど)の押下は以下のアクティビティに渡されません。

また、必ずSYSTEM_ALERT_WINDOW権限をmainifestファイルに追加してください。

于 2013-02-13T02:31:05.103 に答える