错误日志如下
java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
at android.support.v7.app.AppCompatDelegateImplV9.y(AppCompatDelegateImplV9.java:354)
at android.support.v7.app.AppCompatDelegateImplV9.x(AppCompatDelegateImplV9.java:323)
at android.support.v7.app.AppCompatDelegateImplV9.a(AppCompatDelegateImplV9.java:275)
at android.support.v7.app.h.setContentView(AppCompatDialog.java:88)
at android.support.v4.app.DialogFragment.onActivityCreated(DialogFragment.java:411)
at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:2355)
at android.support.v4.app.l.a(FragmentManager.java:1451)
at android.support.v4.app.l.f(FragmentManager.java:1759)
at android.support.v4.app.l.a(FragmentManager.java:1827)
at android.support.v4.app.c.g(BackStackRecord.java:797)
at android.support.v4.app.l.b(FragmentManager.java:2596)
at android.support.v4.app.l.a(FragmentManager.java:2383)
at android.support.v4.app.l.b(FragmentManager.java:2338)
at android.support.v4.app.l.j(FragmentManager.java:2245)
at android.support.v4.app.l1.run(FragmentManager.java:703)atandroid.os.Handler.handleCallback(Handler.java:808)atandroid.os.Handler.dispatchMessage(Handler.java:101)atandroid.os.Looper.loop(Looper.java:166)atandroid.app.ActivityThread.main(ActivityThread.java:7425)atjava.lang.reflect.Method.invoke(NativeMethod)atcom.android.internal.os.Zygote1.run(FragmentManager.java:703)
at android.os.Handler.handleCallback(Handler.java:808)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7425)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote1.run(FragmentManager.java:703)atandroid.os.Handler.handleCallback(Handler.java:808)atandroid.os.Handler.dispatchMessage(Handler.java:101)atandroid.os.Looper.loop(Looper.java:166)atandroid.app.ActivityThread.main(ActivityThread.java:7425)atjava.lang.reflect.Method.invoke(NativeMethod)atcom.android.internal.os.ZygoteMethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
解决方案
(亲测有效)
只需將dialog的 style 改成右边的就OK。使用和Activity一样的具有AppCompat 主题即可