1. 程式人生 > >挑戰練習6.5 限制作弊次數

挑戰練習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.效果圖: