Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:359)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:328)
at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:289)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
从错误提示中提到Theme.AppCompat theme,这是因为我们的activity一定是继承了兼容包中的类, 比如我这里就无意中继承了 AppCompatActivity,它来自android.support.v7.app.AppCompatActivity。 所以就要使用与其配合的AppCompat的theme才行。
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:359)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:328)
at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:289)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.example.activitylifecycletest.DialogActivity.onCreate(DialogActivity.java:11)
在AndroidMainfest.xml中将Activity设置对话框式主题:
原因:<activity android:name=".DialogActivity" android:theme="@android:style/Theme.Dialog"></activity>
从错误提示中提到Theme.AppCompat theme,这是因为我们的activity一定是继承了兼容包中的类, 比如我这里就无意中继承了 AppCompatActivity,它来自android.support.v7.app.AppCompatActivity。 所以就要使用与其配合的AppCompat的theme才行。
<activity android:name=".DialogActivity" android:theme="@style/Theme.AppCompat.Dialog"></activity>