首页 > 代码库 > 读书笔记--Android编程权威指南
读书笔记--Android编程权威指南
1.设备旋转前保存数据
当屏幕旋转时会销毁当前Activity然后再新建一个Activity,这样会造成数据的丢失。通过覆盖onSaveInstanceState(Bundle outState)方法来保存数据。
@Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); Log.i(TAG,"onSaveInstanceState"); outState.putInt(KEY_INDEX,mCurrentIndex); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_quiz); if (savedInstanceState!=null){ mCurrentIndex=savedInstanceState.getInt(KEY_INDEX,0); } mQuestionTextView=(TextView)findViewById(R.id.question_text); updateQuestion(); mTrueBtn= (Button) findViewById(R.id.true_btn); mFalseBtn= (Button) findViewById(R.id.false_btn); mNextButton= (Button) findViewById(R.id.next_button); mPrevBtn= (Button) findViewById(R.id.prev_button); mTrueBtn.setOnClickListener(this); mFalseBtn.setOnClickListener(this); mNextButton.setOnClickListener(this); mPrevBtn.setOnClickListener(this); }
有一点需要注意的是,Bundle中存储和恢复的数据只能是基本数据类型和可以实现Serializable接口的对象。
读书笔记--Android编程权威指南
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。