You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Android Studio中实现透明Toolbar

Hey there! 想在Android Studio里把Toolbar弄成透明效果?这事儿不难,我给你整理了几个常用又靠谱的方法,按需选就行:

方法一:直接在布局文件里设置(最快最直接)

打开你的Toolbar所在的布局XML文件,给Toolbar标签加两个属性就搞定:

<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    <!-- 设置透明背景 -->
    android:background="@android:color/transparent"
    <!-- 去掉Toolbar默认的阴影,不然透明后阴影会很突兀 -->
    app:elevation="0dp" />

要是想要半透明效果,就把@android:color/transparent换成带透明度的颜色值,比如#80FFFFFF(前两位是透明度,00全透明,FF不透明)。

方法二:通过主题样式统一设置(适合整个App的Toolbar都要透明)

如果你的App所有页面的Toolbar都需要透明,直接在主题里配置更省心:

  1. 打开res/values/styles.xml,定义一个透明Toolbar的样式:
<style name="TransparentToolbar" parent="Widget.AppCompat.Toolbar">
    <item name="android:background">@android:color/transparent</item>
    <item name="elevation">0dp</item>
</style>
  1. 然后在你的App主题里引用这个样式:
<style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
    <!-- 其他主题属性 -->
    <item name="toolbarStyle">@style/TransparentToolbar</item>
</style>

这样所有使用默认Toolbar样式的地方都会自动变成透明啦。

方法三:代码动态设置(适合需要动态切换透明度的场景)

如果需要根据用户操作或者页面状态切换Toolbar的透明度(比如滚动时变透明/不透明),可以在Activity或Fragment里写代码:
Java版本:

Toolbar toolbar = findViewById(R.id.toolbar);
// 设置全透明
toolbar.setBackgroundColor(Color.TRANSPARENT);
// 或者设置半透明(alpha值范围0-255,0全透明,255不透明)
toolbar.getBackground().setAlpha(128);
// 别忘了去掉阴影
toolbar.setElevation(0);

Kotlin版本:

val toolbar = findViewById<Toolbar>(R.id.toolbar)
toolbar.setBackgroundColor(Color.TRANSPARENT)
toolbar.background.alpha = 128
toolbar.elevation = 0f

小提醒

  • 要是Toolbar下面的内容没透上来,检查一下布局层级,确保Toolbar所在的布局没有设置不透明的背景色。
  • 如果用了CoordinatorLayout配合滚动,可能还要调整app:layout_scrollFlags和AppBarLayout的属性,避免滚动时出现异常。

内容的提问来源于stack exchange,提问作者FlyHD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:40:09