1

カードの値がデータベースからランダムに取得されるフリップカードのようなiPhoneアプリケーションを作成しました。「次へ」ボタンをクリックすると次のカードに移動する機能を作成しました。この場合も、ランダムなカード値はデータベースからランダムに取得されます。

私はコードを-として使用しました

//On ViewDidLoad()

[self databaseOpen];

    NSString *query_wordData = [NSString stringWithFormat:@"select * from tbl_flashcards order by random() limit 1"];
    NSArray *wordData = [database executeQuery:query_wordData];
    NSLog(@"WORD DATA : %@",wordData);

    NSString *str = [[wordData objectAtIndex:0] valueForKey:@"Term"];
    NSString *str1 = [[wordData objectAtIndex:0] valueForKey:@"Definition"];

    [btnBackCard  setTitle:str forState:UIControlStateNormal];

    [btnFrontCard setTitle:str1 forState:UIControlStateNormal];

    [database close];
    [database release];

//on Next button

    -(IBAction) nextButtonPressed
{
   isBack = YES;

    btnFrontCard.userInteractionEnabled = YES;


    [self frontButtonAnimation];


}

ここで、「最後に表示されたカードが最初に表示される」方法で、表示されたカードを再度表示できる「戻る」ボタン機能を実装したいと思います。

最後にアクセスしたカードを配列に保存し、[戻る]ボタンをクリックしてその配列から最後にインデックスを付けたカードを呼び出す必要があることはわかっていますが、これを行う方法がわかりません。

私を助けてください。

ありがとうございました。

4

1 に答える 1

2

を使用してクエリを制限しないでくださいlimit 1。すべてのカードをランダムな順序で取得し(クエリの制限を省略して)、配列のインデックスを使用して、ボタンを押したときにカードを切り替えます。

編集 :

配列をViewControllerのメンバーとして定義します。コントローラを初期化するときよりも、このメンバーを使用してデータベースからレコードを受信し、コントローラのメソッドで必要な場所で使用します。

于 2012-06-18T06:25:13.083 に答える