Skip to content

[ING]時間制限付き4択クイズのサンプルアプリ

Notifications You must be signed in to change notification settings

fumiyasac/TimerQuiz

Repository files navigation

TimerQuiz

[ING]時間制限付き4択クイズのサンプルアプリ

古くからよく言い伝えられている「食べ合わせ」に関する4択クイズを5問1セットで回答してその結果を履歴 or グラフで結果表示をするサンプルアプリになります。

今回のサンプルの画面設計

  • 2017.05.05更新:

Swift最新版へのコンバートとチャート部分のロジックの変更を行いました。※解説Qiitaも追記しています。

↓masterブランチでのゲーム結果画面は下記のようになっています。

棒グラフでのゲーム結果画面

また、クイズ画面の設計としましては、下記のような流れになっています。

  • ランダムで問題を取得して(重複して問題を出さないようにソートした問題を配列に一旦格納しています)その問題の解答を選択肢 1. 〜 4. の中から選択するという仕様になっています。
  • 選択肢 1. 〜 4. のボタンが押されたら、正解か不正解の判定をして、5問未満の場合は「計算結果」と「かかった時間」を加算して次の問題を表示させます。
  • もし10秒が経過してしまった場合には、強制的に「かかった時間に10秒を加算」して不正解扱いとして次の問題を表示させます。
  • 5問の解答が終了したらゲームの結果を保存し、これまでの履歴と直近5回の結果の推移をグラフにて表示させます。

ゲームロジックの流れを示したフローチャート

※グラフ表示に関しては現在は、棒グラフに変更しています(Swift2.3ブランチ「feature/swift2.3」に関しては折れ線グラフのままです)

データ永続化部分に関してはRealmを使い、直近5回の結果の推移をグラフに表示する部分にはios-chartsを利用しています。 このサンプルのコンセプトとしては、「基本的なアプリにアレンジや拡張を加えてより完成度を上げる」ような形を目指して作成してみました。

詳細な解説&実装のポイントになる部分はこちらに掲載しておりますので、是非とも実機などがおありの場合はインストールをして挙動や振る舞いをご確認いただければと思います。

(Qiita) http://qiita.com/fumiyasac@github/items/18ae522885b5aa507ca3

About

[ING]時間制限付き4択クイズのサンプルアプリ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages