2013-07-31 12 views
9

वर्तमान में समर्थन पुस्तकालयों में एक्शनबार में माइग्रेट करने पर काम कर रहा है। वर्तमान में Theme.AppCompat.Light.DarkActionBar से प्राप्त करने के लिए मेरे पुराने विषयों को माइग्रेट करने का प्रयास कर रहा है लेकिन यह बहुत आसानी से नहीं जा रहा है।थीम से प्रवेश करना। AppCompat *

यह ठीक है अगर मैं इस तरह के रूप प्रकट में विषय लागू होते हैं:

<activity 
    android:name="com.fitsby.LoginActivity" 
    android:screenOrientation="portrait" 
    android:theme="@style/Theme.AppCompat.Light.DarkActionBar" > 
</activity> 

लेकिन मैं एक रनटाइम त्रुटि प्राप्त करते हुए कहा कि LoginActivity (ActionBarActivity के उपवर्ग) जो Theme.AppCompat से विरासत एक विषय होना आवश्यक है , जब मैं निम्न कार्य करें: styles.xml में :

<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
    <item name="android:typeface">sans</item> 
</style> 

और प्रकट में:

<activity 
    android:name="com.fitsby.LoginActivity" 
    android:screenOrientation="portrait" 
    android:theme="@style/AppTheme" > 
</activity> 

कोई विचार क्यों हो रहा है? मुझे कोई समस्या नहीं दिखाई दे रही है, क्योंकि AppTheme स्पष्ट रूप से AppCompat थीम्स में से एक से विरासत में आता है।

+1

क्या आपके पास एकाधिक मान फ़ोल्डर हैं (जैसे विभिन्न API स्तरों के लिए)? यदि हां, तो क्या आपने उन सभी शैली में उस शैली का उपयोग किया था? – Luksprog

+1

यह समाप्त हो गया, इसके लिए धन्यवाद, परियोजना पर बैकएंड देव के लिए पूरी तरह उत्तरदायी था, लेकिन हाल ही में एक टीम के सदस्य से डिज़ाइन का काम ले लिया जिसने जाने का फैसला किया, इस तरह की छोटी सी चीजें सिरदर्द का कारण बन रही हैं। यदि आप अपनी टिप्पणी को किसी उत्तर में बदलना चाहते हैं तो मैं इसे सही उत्तर के रूप में चिह्नित करूंगा। –

उत्तर

10

यदि आपके पास विभिन्न एपीआई स्तरों के लिए आपके आवेदन में values फ़ोल्डर अलग है, तो सुनिश्चित करें कि फ़ोल्डर्स से उन सभी विषयों को Theme.AppCompat.* थीम से बढ़ाया गया है।

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