【问题标题】:Remove ActionBar Border删除 ActionBar 边框
【发布时间】:2016-02-14 07:08:08
【问题描述】:

所以,问题来了。

此边框正在显示,我想将其删除或至少更改不透明度。之前因为 Lollipop 版本有阴影下降,但我用 actionBar.setElevation(0); 删除了它

这是我班级的操作栏代码:

final android.support.v7.app.ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setDisplayShowCustomEnabled(true);
    actionBar.setDisplayUseLogoEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setDisplayHomeAsUpEnabled(false);
    actionBar.setElevation(0);
    actionBar.setCustomView(R.layout.appbar_layout);

这是我的样式代码:

<resources>

<style name="Theme.Example" parent="@style/Theme.AppCompat.Light">
    <item name="actionBarStyle">@style/ActionBar.Solid.Example</item>
    <item name="android:toolbarStyle">@style/ToolbarStyle</item>
    <item name="toolbarStyle">@style/ToolbarStyle</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:actionModeBackground">@android:color/white</item>
</style>

<style name="ToolbarStyle" parent="@style/Widget.AppCompat.Toolbar">
    <item name="contentInsetStart">0dp</item>
    <item name="android:contentInsetStart">0dp</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

<style name="ActionBar.Solid.Example" parent="@style/Widget.AppCompat.Light.ActionBar.Solid">
    <item name="background">@android:color/white</item>
    <item name="android:titleTextStyle">@style/ActionBarStyle.Transparent.TitleTextStyle</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

<style name="ActionBarStyle.Transparent.TitleTextStyle" parent="@style/Widget.AppCompat.Light.ActionBar">
    <item name="android:background">@drawable/appbar_logo</item>
</style>

【问题讨论】:

    标签: java android xml android-actionbar border


    【解决方案1】:

    在您的应用样式中设置以下内容:

     <style name="MyTheme" parent="@style/Theme.AppCompat.Light">
        <item name="colorPrimary">BORDER COLOR HERE</item>
        <item name="colorPrimaryDark">@color/primaryDark</item>
    </style>
    

    在你的清单中:

    <application
        android:label="@string/app_name"
        android:theme="@style/MyTheme">
    ...
    </application>
    

    【讨论】:

      【解决方案2】:

      更有可能的是,如果您的 api 版本 >= 21,您需要这个:

      AppBarLayout appBarLayout = findViewById(R.id.player_app_bar_layout);
      appBarLayout.setOutlineProvider(null);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-31
        • 2012-02-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多