Android异常:您需要在此活动中使用Theme.AppCompat主题

时间:2013-09-12 12:43:00

标签: android

为了使用支持操作栏,我的活动必须扩展ActionBarActivity,当我这样做并启动活动时,应用程序崩溃:

  

异常:您需要在此活动中使用Theme.AppCompat主题(或后代)。

在我的styles.xml中,我有

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"></style>

在我的AndroidManifest.xml中,我有违规行为

<activity android:name="com.example.test3.SettingsActivity"
          android:theme="@style/AppBaseTheme" />

3 个答案:

答案 0 :(得分:15)

您必须检查包含样式文件的其他文件夹,这些文件夹可能会覆盖您的样式。

答案 1 :(得分:2)

将此行写在清单文件中。

 android:theme="@style/Theme.AppCompat.Light.NoActionBar"

样品:

   <activity
        android:name="com.vmoksha.BaseActivity"
        android:label="@string/app_name" 
        android:theme="@style/Theme.AppCompat.Light.NoActionBar"
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

并在styles.xml中的资源标记

中添加此代码
      <style name="Theme.AppCompat.Light.NoActionBar" parent="@style/Theme.AppCompat.Light"> 
        <item name="android:windowNoTitle">true</item>
     </style>

干杯!

答案 2 :(得分:1)

Tsung Wu说:

<style name="Theme.Event" parent="Theme.AppCompat">

然后在AndroidManifest.xml中设置主题:

<application
   android:debuggable="true"
   android:name=".activity.MyApplication"
   android:allowBackup="true"
   android:icon="@drawable/ic_launcher"
   android:label="@string/app_name"
   android:theme="@style/Theme.Event.Home">