挑战练习6.5 限制作弊次数

允许用户最多作弊3次。记录用户查看答案的次数,在CHEAT按钮下显示剩余次数。超出后,禁用偷看按钮。

因为只有点击mShowAnswerButton按钮才是作弊,所以需要从QuizActivity传数据到CheatActivity再传回去。

1.首先定义好新的控件显示剩余作弊次数

2.然后再在QuizActivity和CheatActivity都设置同样的Key值用于存取数据跟一个整型数据表示剩余次数。

3.在QuizActivity里面传数据过去

4.在CheatActivity里面处理接收过来的数据,在onCreate方法里面首先根据键值查数据然后赋值

 5.因为点击一次展示答案按钮次数就减少一次,所以在展示答案按钮的监听器里面每次设置减一

6.把数据传回QuizActivity,跟之前章节的作弊答案一样用键值对存

7.在QuizActivity里面把传回来的数据处理,更新剩余次数

8.在onCreate方法里面绑定TextView控件

9.如果直接在onCreate里面用setText方法展示剩余次数的话,页面后退的时候剩余次数不会刷新,因为后退的时候onCreate方法不会重新调用

 

10.所以为了让TextView能展示最新的剩余次数,我们把setText方法放到onStart方法里面,同时当剩余次数为0的时候让按钮变成不能点击的状态

11.效果图:

 

原文地址:https://www.cnblogs.com/real1587/p/9890087.html