2012年2月2日木曜日

iphone クイズアプリの作り方 その⑤

クイズアプリができるまでは、まだまだかかります。。
今日はQuizItem.hとQuizItem.mの作成です。


これは、クイズをデータファイルから読み込んで、
問題文、選択肢、正解を管理するクラスを実装します。
このクラスでは、問題をランダムに取り出すような機能も実装したいと思います!


まずは、Xcodeを開いて、左側のメニューclassesを選択します。
ファイルから新規ファイルを選び、objective-c classからNSObjectを選択してファイルを作成します。


それでは、「QuizItem.h」から編集していきます。

----
@interface QuizItem : NSObject
{
NSString *_question;
NSString *_rightAnswer;
NSArray *_choicesArray;
}

@property (retain, nonatomic) NSString *question;
@property (retain, nonatomic) NSString *rightAnswer;
@property (retain, nonatomic) NSArray *choicesArray;
@property (readonly, nonatomic) NSArray *randomChoicesArray;


- (BOOL)checkIsRightAnswer:(NSString *)answer;

@end
----

なんかだんだん読めてくるようになってきました!!
まずは、


@interface QuizItem : NSObject

QuizItemっていうインターフェースを作るわけですね。


NSString *_question;
NSString *_rightAnswer;
NSArray *_choicesArray;

それぞれのクラスオブジェクト型の変数を用意します。
_(アンダースコア)をつける理由も、
*(アスタリスク)をつける理由もなんとなくわかってますよー!!

それぞれの役割は、
NSString *_question;  →質問を入れる変数
NSString *_rightAnswer;  →正解の答えを入れる変数
NSArray *_choicesArray;  →選択肢の配列

って感じですね。
次は、

@property (retain, nonatomic) NSString *question;
@property (retain, nonatomic) NSString *rightAnswer;
@property (retain, nonatomic) NSArray *choicesArray;
@property (readonly, nonatomic) NSArray *randomChoicesArray;

@propertyと、@synthesizeでアクセサメソッドを作るんですね!!
これもやりました!
プロパティを定義します。

そして最後に、答えが合っているかをチェックするメソッドを作ります。

- (BOOL)checkIsRightAnswer:(NSString *)answer;

checkIsRightAnswer、ほんとに答えが合っているかチェックって
そのまんまな名前ですね、、

これでQuizItem.hの編集は終わりです。


0 件のコメント:

コメントを投稿