我查看了其他SO帖子并进行了相应配置。但我仍然在某些Android设备上看到了这个问题(4.3.1)。它有75%的时间。
You need to use a Theme.AppCompat theme (or descendant) with this activity.
以下代码有什么问题?
BaseActivity extends android.support.v7.appAppCompatActivity
<application
android:allowBackup="true"
android:theme="@style/AppTheme" >
所有活动(崩溃的活动)都使用应用程序标签中的AppTheme。一项活动使用:
<activity
android:name=".Activities.EntryActivity"
android:noHistory="true"
android:theme="@style/SplashTheme" >
我没有任何其他style.xml。
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
</style>
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
来自Android:
<style name="Theme.AppCompat.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
java.lang.RuntimeException:无法启动活动 ComponentInfo {} Activities.MyAcitivity: java.lang.IllegalStateException:您需要使用Theme.AppCompat 主题(或后代)与此活动。 1点 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211) 2点 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261) 3在android.app.ActivityThread.access $ 600(ActivityThread.java:141) 4点 android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1256) 5在android.os.Handler.dispatchMessage(Handler.java:99)6 at android.os.Looper.loop(Looper.java:137)7 at android.app.ActivityThread.main(ActivityThread.java:5103)8 at java.lang.reflect.Method.invokeNative(Native Method)9 at java.lang.reflect.Method.invoke(Method.java:525)10 at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:737) 11在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 12在com.android.internal.os.ZygoteInit.main(Native Method)13 at dalvik.system.NativeStart.main(Native Method)14引起: java.lang.IllegalStateException:您需要使用Theme.AppCompat 主题(或后代)与此活动。 15点到 android.support.v7.app.AppCompatDelegateImplV7.i(SourceFile:340)16 at android.support.v7.app.AppCompatDelegateImplV7.h(SourceFile:309)17 at android.support.v7.app.AppCompatDelegateImplV7.setContentView(的SourceFile:273) 18点到 android.support.v7.app.AppCompatActivity.setContentView(的SourceFile:136) 19 at .Commons.BaseActivity.onCreate(SourceFile:236)20 at .MyActivity.onCreate(SourceFile:24)21 at android.app.Activity.performCreate(Activity.java:5133)22 at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 23点 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175) 24 ... 12更多25 java.lang.IllegalStateException:你需要使用一个 具有此活动的Theme.AppCompat主题(或后代)。 26点 android.support.v7.app.AppCompatDelegateImplV7.i(SourceFile:340)27 at android.support.v7.app.AppCompatDelegateImplV7.h(SourceFile:309)28 at android.support.v7.app.AppCompatDelegateImplV7.setContentView(的SourceFile:273) 29点 android.support.v7.app.AppCompatActivity.setContentView(的SourceFile:136) 30在Activities.Commons.BaseActivity.onCreate(SourceFile:236)31 at Activities.Accounts.AppLaunchActivity.onCreate(SourceFile:24)32 at android.app.Activity.performCreate(Activity.java:5133)33 at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 34点 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175) 35点 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261) 36在android.app.ActivityThread.access $ 600(ActivityThread.java:141) 37点 android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1256) 38在android.os.Handler.dispatchMessage(Handler.java:99)39 at android.os.Looper.loop(Looper.java:137)40 at android.app.ActivityThread.main(ActivityThread.java:5103)41 at java.lang.reflect.Method.invokeNative(Native Method)42 at java.lang.reflect.Method.invoke(Method.java:525)43 at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:737) 44在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 45 at com.android.internal.os.ZygoteInit.main(Native Method)46 at dalvik.system.NativeStart.main(原生方法)
答案 0 :(得分:0)
试试这个:
res / values / styles.xml中的:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
现在在你的清单中:
<application
android:theme="@style/AppTheme"> //base Application theme
<activity
android:name=".Activities.EntryActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar"> //Activity Theme
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>