[Projet] Application pour apprendre

manoufebmanoufeb Membre
mai 2009 modifié dans Vos applications #1
Bonjour,
Tout d'abord je tenais a dire que c'est mon premier post chez vous, je viens de débuter la programmation sur SDK.

J'ai décidé pour apprendre de créer une petite application,une sorte de TableView avec par exemple Math et quand je tape je tombe sur une view avec un texte editable mais en dessous de math il y aurai Francais par exemple et quand je tape sur français j'ai une autre view avec un autre texte editable une sorte d'index en faite.

Ce qui me permettra de noter des formules ou des définitions afin de les apprendre.

J'ai réalisé le Tableview avec math et Français grâce a ce tuto en français -->

et j'accede a une view mais c'est la même pour math et français, je sais pas comment en avoir une différente pour chacune des matière...


Merci de votre aide!


PS:bravo pour ce super forum :p
«1

Réponses

  • schlumschlum Membre
    19:39 modifié #2
    OMG, mais c'est quoi ce tutoriel  :o

    - Il arrive à  avoir des erreurs à  chaque compilation
    - Il montre des trucs qui ne servent à  rien (allez, rajoutons des erreurs de dépassement de tableau pour montrer que ça va planter, ça sera fun...)
    - Il fait des trucs qui ne servent à  rien (Pour allouer un tableau fixe, ça se fait en une ligne avec la méthode "- (id)initWithObjects:(id)firstObj, ...")
    - Et cerise sur le gâteau, il alloue le vues dans une méthode du dataSource qui est appelée à  chaque sélection du menu !  :'(
  • manoufebmanoufeb Membre
    19:39 modifié #3
    Ah... malheureusement je ne suis pas assez qualifié pour te comprendre...
    Et sinon tu pense pouvoir m'aider?

    Merci de ta reponse ::)
  • schlumschlum Membre
    19:39 modifié #4
    Dans la méthode "tableView:didSelectRowAtIndexedPath:", il y a un appel à  "pushViewController:animated:"
    Il suffit de lui donner en argument la vue qu'on veut afficher pour l'index particulier... (sans l'allouer à  cet endroit comme il fait, c'est crado... en en plus ça perd tous les paramètres de la vue).
  • CeetixCeetix Membre
    19:39 modifié #5
    Pour info c'est moi qui suis à  l'origine de ce tuto. Désolé de pas être un maà®tre en la matière, j'ai juste envie d'apprendre à  ma modeste façon à  d'autres.
    Et manoufeb, c'est toi qui m'a laissé les commentaires, ce que je t'ai répondu est normalement suffisant pour justement te faire une vue différente en fonction de la matière choisie.

  • schlumschlum Membre
    19:39 modifié #6
    Ben je sais pas, je ne fais pas de programmation iPhone, donc il y a peut-être des choses que je ne comprends pas... mais...
    C'est standard avec l'iPhone Kit de faire des (grosses) allocations / désallocations dans les méthodes "did..." ?  ??? (de vues qui du coup vont perdre toutes leurs propriétés au prochain affichage !)
    Le reste, ce sont des pécadilles, mais ça ça m'a fait un peu bondir je dois dire  ;)
  • CeetixCeetix Membre
    19:39 modifié #7
    Je l'ai appris comme ça, je ne sais si c'est normal, je n'ai rien vu de différent. Si ça ne l'est pas je suis preneur pour me corriger .
    Pour le reste, les erreurs de compilations je le corrige (une faute de frappe car pas de } ) et pour le crash c'est juste pour montrer que si je ne retourne pas mon nombre de ligne exacte, ca bug.
    Bref je suis pas un pro malheureusement mais j'essaie d'y mettre de la bonne volonté.  ::)
  • schlumschlum Membre
    19:39 modifié #8
    Ben ne prends pas les remarques méchamment, prends les comme des conseils pour améliorer alors  :P

    - Préparer les tutos de manière a ne pas avoir des trucs du genre " ah... j'ai oublié le #include, ça fait une erreur de compilation "
    C'est quand même bien plus pro d'y penser avant dans le tuto " j'ajoute le #include pour que ma classe soit reconnue "
    - à‰viter les trucs qui font de la longueur et qui ne servent à  rien (c'est évident que si on mets un "numberOfRows" supérieur à  la taille du tableau ça va pas fonctionner... c'est hors-sujet par rapport à  la présentation  ;) )

    Bon, savoir où allouer les trucs et les machins, ça c'est de la pratique ; je serais curieux de voir l'exemple d'Apple correspondant.
  • schlumschlum Membre
    19:39 modifié #9
    Puis ce ne sont pas des conseils de créateur de tutos hein, je serais sans doute très mauvais pour ça (pas trop à  l'aise à  l'oral contrairement à  toi...) :)
    C'est juste un ressenti de non-débutant regardant le tuto  ;)

    Si vraiment je devais faire un tuto, je pense que je marquerais sur une feuille toutes les étapes précisément avec les trucs à  ajouter, à  ne pas oublier pour que tout aille comme sur des roulettes !
  • CeetixCeetix Membre
    19:39 modifié #10
    Oui, moi avant de le faire je le fais pour voir si ça roule. Par contre je n'écris pas car ça me permet aussi à  moi même de voir si j'ai compris.
    Bref, faut voir s'il y a un meilleur moyen de faire.
  • schlumschlum Membre
    19:39 modifié #11
    Un autre conseil tant qu'à  faire : augmente la taille de caractère de la police dans Xcode parce que là  avec la réduction et la compression vidéo, c'est très très galère à  lire.
    J'ai dû me transformer en Champollion pour aller lire le nom des méthodes !

    Allez, pour finir par une touche de positif, pour la diction, rien à  dire, c'est clair, fluide, et la voix est agréable 
  • CeetixCeetix Membre
    19:39 modifié #12
    lol ok ^^.
    Merci.
    Bon et manoufeb il fait quoi là  ? Car pour son problème je lui avait dit de rearder quelle ligne est selectionnée et en fonction de ça faire un if qui ne charge pas la même classe ...
  • schlumschlum Membre
    19:39 modifié #13
    Le site Web est bien foutu aussi, tu devrais faire des tutos sur le Web 2.0  :P

    Pour manoufeb, je lui conseillerais d'allouer les vues au même endroit que les noms (soit dans une autre liste, soit dans la même avec des NSDictionary), et d'utiliser les 2 listes.

    À y repenser, peut-être que l'allocation / désallocation dans la méthode d'appel est faite pour une optimisation mémoire, mais c'est au détriment de l'optimisation processeur et ça ne fonctionne que pour les vues "statiques" (que l'utilisateur ne peut modifier), ou dynamiques à  usage unique (qu'il modifie, mais une seule fois dans un affichage à  un moment donné).
  • CeetixCeetix Membre
    19:39 modifié #14
    Lol oui je refais le design là  ...

    Oui donc tu veux dire que l'user qui veut rajouter des lignes en utilisant direct l'app ce n'est peut etre pas super ...
  • manoufebmanoufeb Membre
    19:39 modifié #15
    dans 1235818147:

    Le site Web est bien foutu aussi, tu devrais faire des tutos sur le Web 2.0  :P

    Pour manoufeb, je lui conseillerais d'allouer les vues au même endroit que les noms (soit dans une autre liste, soit dans la même avec des NSDictionary), et d'utiliser les 2 listes.

    À y repenser, peut-être que l'allocation / désallocation dans la méthode d'appel est faite pour une optimisation mémoire, mais c'est au détriment de l'optimisation processeur et ça ne fonctionne que pour les vues "statiques" (que l'utilisateur ne peut modifier), ou dynamiques à  usage unique (qu'il modifie, mais une seule fois dans un affichage à  un moment donné).




    OU la je débute depuis quelque jous et je ne comprends pas ce que tu dit...


    Et ceetix je suis venu sur le forum car j'avais peur de t'embeter avec mes comentaires...

    Et comme je ne comprenais pas tout...

    En faite j'arrive a faire ton tableView mais je ne connais pas le fonction n'y rien...
    Si tu as u peu de tps tu pourais me faire une capture d'ecran pour me montrer...  :fouf): (je t'en demande beaucoup là  :) )

    Et sinon pour faire plus simple je n'ai cas virée la fonction SSTRING mon menu ...
    Et je mets sur mon anotherview un text editable comme sa c'est plus simple le problème c'est que quand j'edite le texte et que je reviens en arrière (à  l'index avec mes mmatières (math francais...) ) et bien le texte ne reste pas.. l'applis deviens donc inutile...


    Merci à  tous les 2 ! :adios!:
  • CeetixCeetix Membre
    19:39 modifié #16
    Oui, car si tu veux rajouter du texte et tes anti seches quand tu utilises l'app avant le devoir eh bien tu ne fais pas appel à  une base de donnée donc tout s'évapore c'est normal.
    Je veux bien t'aider mais j'explique vraiment tout dans le tuto je ne vois pas quoi faire de plus.
  • manoufebmanoufeb Membre
    19:39 modifié #17
    antisèche...mmmmmais pas du tout... :P

    Euh... tu as surement ichat...


    Je te donne le mien comme sa je pourais te montrer...

    aim: manoufeb

    Merci
  • CeetixCeetix Membre
    19:39 modifié #18
    no sorry juste msn.
    Montre moi ici, tu peux joindre ton projet
  • manoufebmanoufeb Membre
    19:39 modifié #19
    ok, bon sinon pour faire plus simple comment faire appel a une base de donner pour "sauvegarder" le texte.


    PS:on est sur un forum donc c'est plus simple d'en parler mais si (hypothes :) ) j'ai un iphone jailbreaker ce qui est peut etre le cas :p et que j'ai un repository cydia est-il possible avec le SDK de base de sortir l'appli en IPA ou que je puis la mettre sur cydia...?


    Merci
  • CeetixCeetix Membre
    19:39 modifié #20
    Tu pourras mettre ton app sur cydia. Par contre, pas sur l'app store. (Truc de fou, je n'ai pas d'iphone ni de touch et c'est moi qui repond, ca fait mal  :'(   ).
    Eu pour la base de donnée fait une recherche il y a déjà  pas mal de post sur ce sujet. Je te conseil Sqlite.
  • manoufebmanoufeb Membre
    19:39 modifié #21
    ah cool!

    Et tu connais la demarche a suivre pour la sortir en format compatible cydia?

    Moi je veut juste l'appli pour moi, pour m'amuser en faite :)

    Merci pour tout

    Sqlite c'est quoi?

  • CeetixCeetix Membre
    19:39 modifié #22
    Tu n'as pas besoin d'un format spécial. Si tu as ton repository c'est bon.
    Sqlite c'est une base de donné sql monoposte.
  • manoufebmanoufeb Membre
    19:39 modifié #23
    ok donc je sauvegarde tout con sur Xcode et je balance au repository et de mon iphone j'instal l'appl ok cool!

    Ba ecoute je m'en vais chercher alors :)

    il ne me reste plus qu'a trouver comment rennomer mon appli et lui mettre une icone et je c'est pas ou je vais trouver sa...

    Bon ben merci beaucoup!
  • CeetixCeetix Membre
    19:39 modifié #24
    L'icone tu prends un 58 x 58 en png et de nom Icon . Va dans target, clique droit, get info et dans build sur le champ icon mets : Icon.png  .
  • schlumschlum Membre
    19:39 modifié #25
    dans 1235822326:

    Sqlite c'est une base de donné sql monoposte.


    C'est surtout "embedded" plutôt que mono-poste (l'un impliquant l'autre).
  • schlumschlum Membre
    19:39 modifié #26
    dans 1235820578:

    OU la je débute depuis quelque jous et je ne comprends pas ce que tu dit...


    Quand tu dis que tu débutes, c'est en programmation ? En Objective-C ? En Cocoa ? Ou en SDK iPhone ?

    Parce que là  effectivement t'as l'air de ramer sévère. Je te conseille si tu maà®trises bien le C de passer par le livre " Cocoa par la pratique " (nouvelle édition).
  • schlumschlum Membre
    19:39 modifié #27
    dans 1235818415:

    Oui donc tu veux dire que l'user qui veut rajouter des lignes en utilisant direct l'app ce n'est peut etre pas super ...


    Je veux juste dire que le fait d'allouer la vue dans "didSelectRowAtIndexedPath", puis la relâcher juste derrière c'est pas forcément le must. Surtout s'il y a des trucs sqlite à  charger dedans.
  • CeetixCeetix Membre
    19:39 modifié #28
    Hum j'aimerai bien savoir comment faire autrement si quelqu'un sait le faire sur l'iphone ...
    Sinon Schlum j'ai changé mon design de site, un petit avis ?  :P
    iphonetuts.fr
  • schlumschlum Membre
    19:39 modifié #29
    Pour le site, c'est toujours bien... Pour la taille du texte, en fait en mettant en plein écran, ça va (à  part le texte en rouge, va savoir pourquoi, il est tout barbouillé...)

    Sinon, pour le tuto sur la balle, le test n'est pas bon ; ça mange quand même sur les bords... Pour simuler le rebond, il faut non seulement inverser la vitesse, mais aussi ajouter / soustraire le double de la distance au-delà  du " mur ".

    if(x.center&lt;10) {<br />&nbsp; &nbsp; speed.x = -speed.x;<br />&nbsp; &nbsp; x.center += 2*(10-x.center);<br />}
    
  • CeetixCeetix Membre
    19:39 modifié #30
    C'est pas ce que je veux dans mon gros if ?
  • schlumschlum Membre
    19:39 modifié #31
    dans 1235860685:

    C'est pas ce que je veux dans mon gros if ?


    Si, tu inverses bien la vitesse, mais tu n'appliques pas le rebond à  la balle (donc si elle est positionnée en dehors du cadre, elle y reste pour 1 coup).
Connectez-vous ou Inscrivez-vous pour répondre.