0

Я хочу применить специальную тему в заголовке панели задач Android, но когда я пытаюсь это сделать, я получил ошибку.Применить пользовательскую тему в Android-активности

Мои Manifest:

<activity 
    android:name="com.lifegoal.eshop.Recharge_Activity" 
     android:theme="@style/MyTheme" 
     android:label="Mobile Recharge" > 

мои значения v11 текст

<!-- 
    Base application theme for API 11+. This theme completely replaces 
    AppBaseTheme from res/values/styles.xml on API 11+ devices. 
--> 
<style name="AppBaseTheme" parent="Theme.AppCompat.Light"> 
    <!-- API 11 theme customizations can go here. --> 
</style> 



<style name="MyTheme" parent="@android:style/Theme.Holo.Light"> 
    <item name="android:actionBarStyle">@style/MyActionBar</item> 
</style> 

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> 
    <item name="android:titleTextStyle">@style/TitleBarTextColor</item> 
    <item name="android:background">@color/color_blue</item> 
</style> 

Мой Logcat из положить

05-07 17:56:40.655: E/AndroidRuntime(1647): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.lifegoal/com.lifegoal.eshop.Recharge_Activity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 
05-07 17:56:40.655: E/AndroidRuntime(1647):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195) 

если кто-нибудь знает, чем мне помочь ...

<style name="TitleBarTextColor" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"> 
    <item name="android:textColor">@color/color_white</item> 
</style> 


</resources> 
+0

Это ваша проблема: «Вы должны использовать тему Theme.AppCompat (или потомок) с этой деятельностью» -> http://stackoverflow.com/questions/21814825/you-need-to- use-a-theme-appcompat-theme-or-descendant-with-this-activity –

+0

@Lamasse они сказали нам что-то вроде этого. Причина, по которой у вас возникает эта проблема, состоит в том, что действие, которое вы пытаетесь применить к теме диалога, расширяется ActionBarActivity, которая требует применения темы AppCompat. Измените наследование Java от ActionBarActivity к Activity и оставьте тему диалога в манифесте как есть, но мне нужно расширять активность в действии ... любым другим способом – Tufan

+0

@Tufan Какая среда разработки для среды Eclipse или Studio ?. – Sakthi

ответ

2

Как вы, вероятно, использовать AppBaseTheme для вашей темы приложения, вы также должны были бы тему AppCompat для overrriden деятельности: Ваш MyTheme должен иметь родителю Theme.AppCompat или Theme.AppCompat.Light, а не тему Холо в currenly.

+0

, если я использовал его в порядке, но если я установил цвет заголовка панели действий на красный дисплей, то голой свет не будет действовать. Любой soln – Tufan

+0

U должен использовать 'Theme.AppCompat.DarkActionBar' или' Theme.AppCompat.Light.DarkActionBar' для есть белый текст панели действий. – Maxr1998

+0

Кстати, я также предлагаю использовать новый вид панели инструментов из поддержки v7 вместо панели действий, см. здесь: http://android-developers.blogspot.de/2014/10/appcompat -v21-material-design-for-pre.html (Chapter ** Action Bar **) – Maxr1998

0

Следуйте ниже ссылку, чтобы разработать собственную тему
http://jgilfelt.github.io/android-actionbarstylegenerator/

После загрузки темы вам просто нужно пройти файлы в нужную папку и внутри AndroidManifesh.xml вам нужно написать свое собственное название темы.

<application 

     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/custom_theme_name" > 
     <activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 
Смежные вопросы