最近在学习一本郭霖老师写的《第一行代码Android 第2版》的2.4章activity的生命周期时,遇到一个问题。书中的例子给出将activity设定成对话框式的话,需要在AndroidManifest.xml里追加如下主题代码
但是运行程序时候发生了crash。
logcat里面的信息内容如下:
发生了如下错误:You need to use a Theme.AppCompat theme (or descendant) with this activity.
导致此问题的原因是我的IDE版本不兼容?还是说运行的安卓程序版本太高?具体原因我不清楚于是去Google找解决办法。
有2种解决方案;
方案1:
修改DialogActivity.class的继承;
将
public class DialogActivity
extends AppCompatActivity
修改为
public class DialogActivity
extends Activity并且需要
import android.app.Activity;
方案2:
修改AndroidManifest.xml里追加如下主题代码;
修改方案如下:
两种方案亲测有效,但是问题的原因我依然不知道。希望有知道的前辈们能留言告诉我一下问题的原因,多谢指导。