hyoromoのブログ

最近はVRSNS向けに作ったものについて書いています

Activityの背景を透過させたよ

Activity をトリガーにしたい時に便利かな。
私は「Activity起動」→「Service起動」→「Activity終了」の一連処理中に、Activity の存在をユーザーに認識させない手段として利用しました。*1

やり方

AndroidManifest.xmlファイルの activityタグ内へ以下のように追加します。

    ・・・
    <activity android:name=".(Activityを継承しているクラス名)"
        android:label="@string/app_name"
        ・・・
        android:theme="@android:style/Theme.Translucent.NoTitleBar" >
    ・・・
    </activity>
    ・・・

見え方

Activity の背景が透過され、代わりに Home が見えます。
device

注意点

単に Activity の背景が透過されてるだけで、実際には Activity が起動されています。Home画面が見えるからと言って Home での操作はできません。
ユーザーには理解できない現象なため、あくまで一時的に利用するだけに止めた方が良さそうです。*2

*1:他に Service だけを起動させる良い手段があれば教えてください。

*2:私が利用したのは onCreate()メソッド実行中のみ