All Projects → justinmeiners → iOS-Quizkit

justinmeiners / iOS-Quizkit

Licence: other
Local Quiz/Test administration and management for iOS.

Programming Languages

objective c
16641 projects - #2 most used programming language
ruby
36898 projects - #4 most used programming language

Labels

iOS-Quizkit

A fork of iOS-Quizkit to further develop the project:

  • intending to add unit tests with travis integration
  • new question types
  • base view controllers for question types
  • hopefully a pull request back to the iOS-QuizKit repo or separate cocoa pod
  • Have added scoring to the demo project and will continue to develop as View Controllers are added.

Build Status

iOS-Quizkit is an Objective-C API for creating applications with quiz and test features. For flexibility, the API focuses completely on the model layer and makes no attempt to offer a UI solution.

Included is a quick sample app with the library integrated. It provides an example of how the API might be integrated into an application.

Features:

  • Multiple choice questions
  • Open response questions with optional Levenshtein distance approximation
  • True/False questions
  • Full NSCodor support for quizzes, questions, and sessions.
  • Load quizzes from user created Plists and JSON.
  • Optional User Data on most structures.
  • Automatic or custom scoring
  • Retroactive session grading
// Load Quiz from user plist
[ISQuizParser quizFromContentsOfPlist:...];

// Load Quiz from JSON file
[ISQuizParser quizFromContentsOfJSON:...];

// Load Quiz from bundle
[ISQuizParser quizNamed:...];
// Start a new quiz session
ISSession* session = [ISSession session];
[session start:quiz];

// Submit answers
[session setResponse:[ISOpenQuestionResponse responseWithResponse:...] atIndex:0];
[session setResponse:[ISTrueFalseQuestionResponse responseWithResponse:...] atIndex:1];

[session stop];

// Grading
ISGradingResult* result = [quiz gradeSession:session];
NSLog(@"Score: %i/%i", result.points, result.pointsPossible);
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].