Промяната на иконата на homeAsUpIndicator в ActionbarSherlock няма ли ефект в ICS?

Опитвам се да променя иконата homeAsUpIndicator в ActionBar. Използвам ActionBarSherlock, за да съм съвместим с по-стари версии на Android. Задавам конкретна тема на моята активност, когато приложението работи на устройство с по-стари версии на ICS и ICS показва различни цветове.

Това е стилът, който използвам

<style name="Theme.PM" parent="@style/Theme.Sherlock.Light">

    <item name="android:homeAsUpIndicator">@drawable/back_sign</item> 
    <item name="homeAsUpIndicator">@drawable/back_sign</item>

</style>

като това по-долу на изображението. За ICS вижте, че индикаторът Home as Up изглежда като черен цвят.

въведете описание на изображението тук

За по-стари версии на ICS вижте, че индикаторът за начало изглежда като бял цвят.

въведете описание на изображението тук

Използвам едно и също изображение и за двете версии, но изглежда различно на ICS. как да реша този проблем..


person RajaReddy PolamReddy    schedule 27.03.2013    source източник


Отговори (1)


<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <style name="CustomStyleUpAsHome" parent="Theme.Sherlock.Light">
        <item name="android:actionBarStyle">@style/CustomActionBarUpAsHome</item>
        <item name="android:homeAsUpIndicator">@drawable/arrow_home</item>
        <item name="homeAsUpIndicator">@drawable/arrow_home</item>
    </style>

    <style name="CustomActionBarUpAsHome" parent="CustomActionBar">
        <item name="android:displayOptions">homeAsUp|useLogo|showHome</item>
        <item name="displayOptions">homeAsUp|useLogo|showHome</item>
    </style>

</resources>

<activity
    android:name=".activity.Activity"
    android:screenOrientation="portrait"
    android:theme="@style/CustomStyleUpAsHome">
</activity>

Този код работи чудесно. Опитайте се да направите нещо такова. Може би ще ви помогне.

Късмет!

person Ilya Demidov    schedule 27.03.2013
comment
здравей, ако използвам твоя код... дава грешка за този родител CustomActionBar. Няма намерен ресурс за този родител. Можете ли да напътствате. искам да променя изображението на бутона за връщане назад. - person djk; 07.03.2014
comment
здрасти CustomActionBar е стил, който разширява темата на лентата с действия по подразбиране. Например ‹style name=CustomActionBar parent=style/Widget.AppCompat.ActionBar› , ако използвате библиотека за съвместимост или можете да разширите теми на Sherlock или Platform. Късмет! - person Ilya Demidov; 07.03.2014