Używam Action Bar Compat, więc mój pasek działań z szufladą nawigacji był zgodny wstecz aż do poziomu API 9 i chcę zmienić tło paska akcji.Niestandardowe (gradientowe) tło ActionBar Compat
skopiowane kod z 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>
I tu pojawia się problem.
Po umieszczeniu obrazu lub tła jako tła, działa dobrze. Jednakże chcę, aby zdefiniować tło jako kształt gradientu, więc moja actionbar_background
wygląda następująco:
<?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>
chcę być powtarzane w sposób horyzontalny, ale nawet to powoduje błąd w rzeczywistości, bardzo ciekawy błąd. Urządzenie testowe, a nawet emulator zostanie zrestartowany, gdy spróbuję uruchomić aplikację. Przed ponownym uruchomieniem udało mi się złapać DeadObjectException
.
Jak powinien wyglądać tła do rysowania?
To działa, chociaż nie rozumiem części DeadObjectException, kiedy urządzenie otrzyma taki wyjątek? – Bruce