Android 使工具栏仅在一个活动/片段中透明

Android 使工具栏仅在一个活动/片段中透明,android,Android,我需要我的工具栏是透明的,但只在一个活动/片段中。 我知道这是一种方法: toolbar.getBackground().setAlpha(0); 但它也改变了其他片段的工具栏。是否有替代方法或方法使其仅适用于一个片段 这样,我需要在每个活动/片段中设置工具栏的alpha toolbar.getBackground().setAlpha(255); 这是唯一的办法还是唯一的办法 关于,您可以使用主题: <style name="my.ToolbarActivity" parent="b

我需要我的工具栏是透明的,但只在一个活动/片段中。 我知道这是一种方法:

toolbar.getBackground().setAlpha(0);
但它也改变了其他片段的工具栏。是否有替代方法或方法使其仅适用于一个片段

这样,我需要在每个活动/片段中设置工具栏的alpha

toolbar.getBackground().setAlpha(255);
这是唯一的办法还是唯一的办法

关于,

您可以使用主题:

<style name="my.ToolbarActivity" parent="base">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBarOverlay">false</item>
    <item name="windowActionModeOverlay">false</item>
</style>

<style name="my.ToolbarActivity.Overlay" parent="my.ToolbarActivity">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionModeOverlay">true</item>
</style>

<style name="my.ToolbarActivity.Overlay.Transparent" parent="my.ToolbarActivity.Overlay">
    <item name="android:windowBackground">@android:color/transparent</item>
</style>

假的
真的
真的
假的
假的
真的
真的
@android:彩色/透明
然后在你的舱单上:

 <activity
        android:name=".activity.TransparentActivity"
        android:theme="@style/my.ToolbarActivity.Overlay.Transparent"
        ....
  </activity
  <activity
        android:name=".activity.OverlayActivity"
        android:theme="@style/my.ToolbarActivity.Overlay"
        ...
  </activity>

如果活动中的片段控制流具有如下定义的标准开关片段函数,那么很明显-

public void switchfragment(){
     switch(fragment_number){
         case 1:
            hideActionBar() ; // or hideToolbar() as u want
            return new Fragment1();
         case 2:
            showActionBar();  //or showtoolbar() as u want
            return new Fragment2();
}

}
我看不到这样的情况,当你必须从单个片段中设置它时,除非你试图从我通常避免的片段中切换片段