Android编程权威指南(第2版)—第5章挑战练习
2017-08-18 15:27
288 查看
5.5 挑战练习(1)用户作弊后,可以旋转CheatActivity来清除作弊痕迹这个可以用书本前面让题目横屏后不重置的方法来进行:新建两个常量和一个变量
private static final String TAG = "CheatActivity"; private static final String KEY_INDEX = "index"; private boolean mIsCheat;重写onSaveInstanceState方法
用以存储用户是否作弊的状态
public void onSaveInstanceState(Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState); Log.i(TAG, "onSaveInstanceStateCheat"); savedInstanceState.putBoolean(KEY_INDEX, mIsCheat); }在show_answer_button的监听事件里,对mIsCheat进行赋值
mIsCheat = true;
最后在onCreate方法里增加如下代码:
if (savedInstanceState != null){ mIsCheat = savedInstanceState.getBoolean(KEY_INDEX, false); setAnswerShownResult(true); if (mIsCheat){ mAnswerTextView.setText(R.string.true_button); } else { mAnswerTextView.setText(R.string.false_button); } }(2)作弊返回后,用户可以旋转QuitActivity来清除mIsCheater变量值QuizActivity中修改的方法跟前面的完全一样,需要注意的是,在CheatActivity中,需要增加一条代码if (savedInstanceState != null){mIsCheat = savedInstanceState.getBoolean(KEY_INDEX, false);setAnswerShownResult(true); //add this one}不然屏幕反转的时候,CheatActivity里面之前记录的setAnswerShownResult信息会丢失,这样页面返回时,数据传不到QuizActivity当中
(3)用户可以不断单击next按钮,跳到偷看过答案的问题,从而使作弊记录丢失有借鉴网友onevo1的方法,http://blog.csdn.net/onevo1/article/details/47109581但是文中做法比较复杂,我进行了最简单的应用只修改QuizActivity:增加arraylist收集作弊题号private ArrayList<Integer> list = new ArrayList<Integer>();
修改onActivityResult方法,如果作弊记录为true,则题目号入作弊列表
if (mIsCheater == true){list.add(mCurrentIndex);}
修改checkAnswer方法,如果当天题目号在作弊列表中,则显示作弊提示
if (mIsCheater || list.contains(mCurrentIndex)){messageResId = R.string.judgment_toast;}
相关文章推荐
- Android编程权威指南(第2版)—第6章挑战练习
- Android编程权威指南(第2版)—第14章挑战练习
- Android编程权威指南(第2版)—第15章挑战练习
- Android编程权威指南(第2版)—第13章挑战练习
- Android编程权威指南(第2版)—第12章挑战练习
- Android编程权威指南(第2版)—第2章挑战练习
- Android编程权威指南(第2版)—第20章挑战练习
- Android编程权威指南(第2版)—第8章挑战练习
- Android编程权威指南(第2版)—第10章挑战练习
- Android编程权威指南(第2版)—第16章挑战练习
- 《Android编程权威指南(第三版)》第十一章挑战练习Demo
- Android编程权威指南(第三版)挑战练习五
- 《Android编程权威指南》第二版 第五章 挑战练习
- Android编程权威指南:第21章挑战练习:有一个隐式intent
- 《Android编程权威指南》第二版 第六章 挑战练习
- 《Android编程权威指南》第二版 第八章 挑战练习
- 《Android编程权威指南(第三版)》第三章挑战练习Demo
- Android编程权威指南第三版挑战练习一
- 《Android编程权威指南》第二版 第二章 挑战练习
- 《Android编程权威指南(第三版)》第十章挑战练习Demo