LoginSignup
2
2

More than 5 years have passed since last update.

StatusBar や AppBar を透過にする

Last updated at Posted at 2019-02-28

StatusBar や AppBar を透過したいなと思ったときに毎回調べてはハマったりしているので自分用にメモとして残したいと思います。

前提

~.NoActionBar を継承したスタイルはどこかで設定して自前で ActionBar を実装している前提です。

StatusBar

AndroidManifest にある該当の Activity の theme に以下を設定します。

<style name="TranslucentStatusBar">
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

v23 以降はコレを設定します。

<style name="TranslucentStatusBar">
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:windowLightStatusBar">true</item>
</style>

Y.A.M の 雑記帳: StatusBar 透明化の正しい方法 にとても詳しく書かれています。ちゃんと理解したい人はみてください。

AppBar

AppBarLayouttheme として以下を設定します。

<style name="TranslucentAppBar">
    <item name="colorPrimary">@android:color/transparent</item>
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
</style>

おそらく elevation が残るので、レイアウトに直接 app:elevaiton="0dp" を設定します。

戻るボタン

Toolbar に以下を theme として設定します。もしかしたら他にいい方法あるかもしれないので知っている人は教えてください :pray:

<style name="ToolBar">
    <item name="navigationIcon">@drawable/ic_close_white</item>
</style>
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2