问题描述
FATAL EXCEPTION: main
Process: com.wuchen.juexiao_mvvm, PID: 11732
android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?

原因分析:
当使用startActivity开启一个新界面时,出现的错误,这是由于使用到了Content中的startActivity方法。
Activity和Content中都有startActivity方法,而Activity继承自Context,重写了startActivity方法,当使用Content中的startActivity方法时,会受到限制,需要开启一个新的task
解决方案:
fun startActivity(context: Context , chapterId: Int , type: Int) {val intent = Intent(context, ExerciseActivity::class.java)intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)intent.putExtra(ARG_CHAPTER_ID,chapterId)intent.putExtra(ARG_TYPE,type)context.startActivity(intent)}
加入intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)这一行代码即可













