我正在使用自定义主题abnd我认真地得到了这个奇怪的问题。背景应该只出现在LinearLayout中,但它突然开始出现在ActionBar图标以及布局的所有视图中。
这是屏幕截图:
这是我的自定义主题:
<?xml version="1.0" encoding="utf-8"?>
<!-- the theme applied to the application or activity -->
<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="actionBarStyle">@style/MyActionBar</item>
<item name="android:background">@drawable/background</item>
<item name="actionBarTabTextStyle">@style/MyActionBarTabText</item>
<item name="actionDropDownStyle">@style/Widget.AppCompat.Spinner.DropDown.ActionBar</item>
</style>
<!-- Menu/item attributes -->
<style name="actionMenuViewStyle" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:itemTextAppearance">@style/TextAppearance.Widget.AppCompat.ExpandedMenu.Item</item>
<item name="android:listViewStyle">@style/Widget.AppCompat.ListView.Menu</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="background">@drawable/action_bar_gradient</item>
<item name="backgroundStacked">@drawable/action_bar_gradient</item>
<item name="titleTextStyle">@style/MyActionBarTitleText</item>
</style>
这是我的activity_add.xml:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="10dp"
android:background="@drawable/background_gradient" >
<android.support.v7.widget.GridLayout
android:id="@+id/HeaderGridLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_column="2"
app:layout_row="14"
app:orientation="vertical" >
<TextView
android:id="@+id/textYear"
android:layout_width="125dp"
android:layout_height="40dp"
android:layout_marginRight="10dp"
app:layout_column="1"
app:layout_row="1"
android:gravity="center"
android:text="@string/year"
android:textStyle="bold" />
<Spinner
android:id="@+id/year_spinner"
android:layout_width="145dp"
android:layout_height="40dp"
app:layout_column="2"
app:layout_row="1"
android:gravity="center"
android:prompt="@string/year" />
<TextView
android:id="@+id/text_district"
android:layout_width="125dp"
android:layout_height="40dp"
app:layout_column="1"
app:layout_row="2"
android:gravity="center"
android:text="@string/district"
android:textStyle="bold" />
<Spinner
android:id="@+id/district_spinner"
android:layout_width="145dp"
android:layout_height="40dp"
app:layout_column="2"
app:layout_row="2"
android:gravity="center"
android:prompt="@string/district" /><--Closing of grid and linear layout-->
我没有在Manifest文件和自定义主题上声明背景,但仅在activity_add.xml中声明,但我在所有ActionBar图标和视图中都有背景,如上所示。 有人知道如何解决这个问题吗?请帮忙。
答案 0 :(得分:2)
仅当您在custom_theme中放置android:background时,才会显示操作栏周围的此类背景。所以尝试删除
<item name="android:background">@drawable/background</item>
来自您的自定义主题。