帮看一下为什么获取不到savedInstanceState的值

yhm2046 中级 2021-04-07 07:11:08

class MainActivity : AppCompatActivity() {
private val tag="MainActivity"
override fun onSaveInstanceState(outState: Bundle) {
Log.d(tag,"onSaveInstanceState()...")
super.onSaveInstanceState(outState) //临时保存数据
val temdata="something str"
outState.putString("data1",temdata)
val temdata2=99.99
outState.putDouble("data2",temdata2)
val temdata3=false
outState.putBoolean("data3",temdata3)
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Log.d(tag,"onCreate..")
val binding=ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
if (savedInstanceState!=null){
Log.d(tag,"running...........")
Log.d(tag,"str:${savedInstanceState.getString("data1")}")
Log.d(tag,"double:${savedInstanceState.getDouble("data2")}")
Log.d(tag,"boolean:${savedInstanceState.getBoolean("data3")}")
}else
Log.d(tag,"savedInstanceState is null...........")
binding.btnShowNormal.setOnClickListener {
val intent = Intent(this,NormalActivity::class.java)
startActivity(intent)
}
binding.btnShowDialog.setOnClickListener {
val intent = Intent(this,DialogActivity::class.java)
startActivity(intent)
}
}//end oncreate
...全文
254 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
立青_ 中级 2021-04-08
  • 打赏
  • 举报
回复
我试了下,是可以的。 onSaveInstanceState是在活动意外被杀死下执行的,比如旋转屏幕后

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧