2010-07-26 3 views
1

Je veux faire un simple système de score élevé pour mon jeu. Pas d'affichage en ligne, simplement stocker vos meilleurs scores sur l'appareil, peut-être être en mesure de les partager sur Twitter ou quelque chose comme ça.iPhone: Création d'un système de score élevé simple en utilisant SQLite

Ma table est comme ceci:

CREATE TABLE highscores (name VARCHAR(10), score INT) 

et je veux trouver un moyen facile de récupérer le nom, le score et le commander par le score descendant, retour en haut 5.

SELECT name, score FROM highscores ORDER BY score DESC LIMIT 0, 5 

J'ai essayé de le faire, suivant ce tutoriel SQLite: http://dblog.com.au/iphone-development-tutorials/iphone-sdk-tutorial-reading-data-from-a-sqlite-database/

J'ai créé la base de données, mettre en place, a essayé de faire mon propre emballage, mais je m'y suis fo problèmes de llowing:

  • Il a travaillé charger le score, mais le chargement du nom, que j'ai essayé de convertir en un NSString * comme ils le font dans le tutoriel, ne fonctionnerait pas, il vient de rentrer 0 même si je l'avais mis le nom à "Johannes"
  • Si je navigué loin de la page de scores, puis revenez au menu et cliqué sur la page de scores à nouveau l'application s'est écrasé.

Des idées? Je suis vraiment stressé, je ne trouve rien en ligne à ce sujet. : [

Répondre

2

Dude ... Overkill. Il suffit d'enregistrer ces données dans un objet ou un tableau pour enregistrer et restaurer les sessions entre deux objets à l'aide de NSUserDeafults.

Pour commander les données. Utilisez des prédicats. A défaut de juste le trier soi-même. http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/Predicates/Articles/pUsing.html

Sérieusement, ne perdez pas de temps pour obtenir votre application en direct. J'aime dire «échouer rapidement», ce qui signifie comprendre ce qui ne fonctionne pas et fonctionner avec ce qui fonctionne et rendre cela génial. Rien de pire que de passer des jours/semaines sur une application qui pourrait ne faire que quelques dollars.

J'espère que c'est une aide.

+0

Pouvez-vous poster un exemple de code de comment faire ce que vous venez de dire? –

+1

NSUserDéfauts pour enregistrer les informations. Est-ce simple comme ça. [[NSUserDefaults standardUserDefaults] setObject: VOTRE_HIGH_SCORE_ARRAY_DICTIONARY forKey: @ "hiscores"]; en savoir plus à ce sujet ici. http://www.kurl.ws/xK Vous pouvez même oublier d'utiliser Predicates et écrire une simple boucle pour trier les scores manuellement. –

+0

Oh merci beaucoup! NSUserDefaults est comme un épargnant de vie. : D Me rappelle de SharedObject de Flash ... en quelque sorte. Eh bien, aussi facile à utiliser. : D –

Questions connexes