ナビゲーション ドロワー付きのアクション バーが API レベル 9 まで下位互換性を持つように、Action Bar Compat を使用しています。アクション バーの背景を変更したいと考えています。
Android Developersからコードをコピーしました:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- the theme applied to the application or activity -->
<style name="CustomActionBarTheme"
parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:actionBarStyle">@style/MyActionBar</item>
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar"
parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="android:background">@drawable/actionbar_background</item>
<!-- Support library compatibility -->
<item name="background">@drawable/actionbar_background</item>
</style>
</resources>
そして、ここで問題が発生します。
背景として画像ドローアブルまたは色を配置すると、正常に機能します。ただし、背景をグラデーション形状として定義したいので、actionbar_background
次のようになります。
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<gradient
android:startColor="@color/ac_bg_start"
android:endColor="@color/ac_bg_end"
android:type="linear"/>
<size
android:width="1dp"
android:height="48dp"/>
</shape>
水平方向に繰り返したいのですが、これでもエラーになります。実際、非常に興味深いエラーです。アプリを実行しようとすると、デバイスをテストし、エミュレーターでさえ再起動します。再起動前にキャッチできましたDeadObjectException
。
背景のドローアブルはどのように見えるべきですか?