继承自Theme.AppCompat*

Bre*_*nik 9 android android-theme

目前正致力于在支持库中迁移到ActionBar.目前正在尝试迁移我的旧主题继承,Theme.AppCompat.Light.DarkActionBar但它并不是很顺利.

如果我在清单中应用主题就可以了:

<activity
    android:name="com.fitsby.LoginActivity"
    android:screenOrientation="portrait"
    android:theme="@style/Theme.AppCompat.Light.DarkActionBar" >
</activity>
Run Code Online (Sandbox Code Playgroud)

但是我得到一个运行时错误,声明LoginActivity(ActionBarActivity的子类)必须有一个继承自Theme.AppCompat的主题,当我执行以下操作时:在styles.xml中:

<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:typeface">sans</item>   
</style> 
Run Code Online (Sandbox Code Playgroud)

并在清单中:

<activity
    android:name="com.fitsby.LoginActivity"
    android:screenOrientation="portrait"
    android:theme="@style/AppTheme" >
</activity>
Run Code Online (Sandbox Code Playgroud)

任何想法为什么会发生这种情况?我没有看到任何问题,因为AppTheme显然继承了AppCompat主题之一.

Luk*_*rog 10

如果values应用程序中有不同的文件夹,则对于不同的API级别,请确保文件夹中的每个主题都延伸到所需的Theme.AppCompat.*主题.