活动A启动中,在活动A的基础上启动活动B,此时,活动A进入了停止状态,这个时候由于系统内存不足活动A被回收,这时按BACK按键,或再次回到活动A,注意:此时的活动A不是执行Restart()方法得到的,而是执行Create()方法重新创造的,如果这时候恰好活动A存在临时数据或者状态将消失。
解决方法:Activity中提供了一个onSaveInstanceState()回调方法。
onSaveInstanceState()方法携带一个bundle类型的参数,Bundle提供了一系列的方法用于保存数据,比如putString()用于保存字符串数据,putInt()用于保存整数类型数据。每个方法需要传入两个参数 Key(键)用于后面从Bundle中取值,value(值)保存真正的内容。