startActivity

Activityの外からstartActivityを呼ぶ

GridviewのadapterからstartActivityを呼ぶとエラーとなった。

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?

setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)設定するとエラーが回避できた。

val intent = Intent(context, MainActivity::class.java).apply {
    val dataList = Json.stringify(RowData.serializer().list, menulist )
    putExtra("rowdataList", dataList)
    putExtra("index",index)
    setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) // ←ここ
}
startActivity(context,intent,null)