2013-03-27 3 views
7

मैं ActionBar में homeAsUpIndicator आइकन बदलने की कोशिश करता हूं। मैं पुराने एंड्रॉइड संस्करणों के अनुकूल होने के लिए ActionBarSherlock का उपयोग करता हूं। जब मैं ऐप आईसीएस और आईसीएस के पुराने संस्करण वाले डिवाइस पर चलता हूं तो यह मेरी गतिविधि के लिए एक विशिष्ट विषय निर्धारित करता है, यह विभिन्न रंग दिखाता है।घर का परिवर्तन एक्शनबार शेरलॉक में ऐसअप इंडिकेटर आइकन आईसीएस में प्रभाव नहीं डालता है?

यह शैली मैं

<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> 

उपयोग कर रहा हूँ की तरह है इस नीचे दी गई छवि के आईसीएस देखें ऊपर संकेत के रूप में घर काले रंग की तरह लग रही है।

enter image description here

आईसीएस के पुराने संस्करण के लिए ऊपर संकेत के रूप में घर सफेद रंग की तरह लग रही है कि देखते हैं।

enter image description here

मैं दोनों संस्करणों के लिए एक ही छवि का उपयोग कर रहा है, लेकिन यह आईसीएस पर अलग अलग रही है। इस समस्या को हल करने के लिए कैसे करें ..

उत्तर

13
<?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> 

यह कोड बहुत अच्छा काम करता है। ऐसा कुछ करने की कोशिश करो। यह आपकी मदद करेगा।

शुभकामनाएं!

+0

हाय, अगर मैं आपका कोड उपयोग कर रहा हूं .. यह इस अभिभावक "कस्टमएक्शनबार" के लिए त्रुटि देता है। इस माता-पिता के लिए कोई संसाधन नहीं मिला। क्या आप गाइड कर सकते हैं मैं वापस बटन छवि बदलना चाहता हूँ। – djk

+0

हाय। CustomActionBar शैली है जो डिफ़ॉल्ट एक्शनबार थीम को बढ़ाती है। उदाहरण के लिए <शैली का नाम = "CustomActionBar" पैरेंट = "शैली/विजेट। AppCompat.ActionBar">, यदि आप संगतता लाइब्रेरी का उपयोग कर रहे हैं या आप शेरलॉक या प्लेटफ़ॉर्म थीम का विस्तार कर सकते हैं। सौभाग्य! –

संबंधित मुद्दे