IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement iOS Discussion :

Demande explication sur un programme pour iPhone


Sujet :

Développement iOS

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 32
    Points : 17
    Points
    17
    Par défaut Demande explication sur un programme pour iPhone
    Salut.

    Je débute dans la programmation sur iphone.
    J'ai fait ce petit programme de conversion francs/euros.
    Voila le code source :
    conversion.h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #import <UIKit/UIKit.h>
    
    
    @interface conversion : UIView {
        
        IBOutlet UITextField *francs; //Déclaration du champ pour rentrer la valeur en franc
        IBOutlet UILabel *resultat;    //Déclaration du label pour afficher le résultat de la conversion
        
        float franc,total; //Déclaration des variables pour effectuer le calcul
    
    }
    
    -(IBAction) CONVERSION : (id) sender; //Déclaration du bouton
    
    @property (nonatomic, retain) IBOutlet UITextField *francs; // Pourquoi ???
    @property (nonatomic, retain) IBOutlet UILabel *resultat;   // Pourquoi ???
    
    
    
    @end
    Et le conversion.m

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    #import "conversion.h"
    
    
    @implementation conversion
    
    @synthesize francs;    // Pourquoi ???
    @synthesize resultat; // Pourquoi ???
    
    
    
    -(IBAction) CONVERSION : (id) sender {
        
        franc=[francs.text floatValue]; //On associe à la varaible franc la valeur que l'on a entré
        total=franc*6.55957; //On effectue la conversion
        resultat.text = [NSString stringWithFormat:@"%f",total]; //On affiche la valeur de la conversion dans le label résultat
    }
    
    
    
    -(void)dealloc {
        
        [super dealloc];
    }
    
    
    @end
    En commentaire, j'ai mis des "Pourquoi" lorsque je ne comprenais pas, pouvez-vous m'expliquer pourquoi on les utilise?
    Le programme marche bien, mais je dois appuyer plusieurs fois sur le bouton "conversion" afin que le calcul s'effectue, est-ce normal?

    Merci

  2. #2
    Membre expérimenté
    Avatar de FloMo
    Homme Profil pro
    Freelance iOS
    Inscrit en
    Juillet 2004
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Freelance iOS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 726
    Points : 1 511
    Points
    1 511
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    -(IBAction) CONVERSION : (id) sender;
    Cette partie représente la méthode appelée lors de l'appui sur le bouton. IBAction signifie que cette action est visible dans Interface Builder.
    Le paramètre sender (de type objet générique) correspond à l'élément qui appelle l'action (un UIButton par exemple)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    IBOutlet UITextField *francs;
    IBOutlet signifie que cet élément d'interface est accessible via un outlet dans Interface Builder.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @property (nonatomic, retain) IBOutlet UITextField *francs;
    @property : propriété (accessible via monobjet.francs)
    (nonatomic, retain) : options de la propriété (on y accède en faisant un retain et en mode non atomique pour le multi-thread)
    IBOutlet : mention inutile car déjà faite sur cet élément dans les variables.

    La propriété est un mécanisme permettant d'accéder à des valeurs liées à un objet.
    Pour cela, on définit 2 méthodes dans l'implémentation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    - (UITextField *)francs;
    - (void)setFrancs:(UITextField *)f;
    Cependant, on peut choisir d'écrire automatiquement ces 2 méthodes. Pour cela, on utilise @synthesize francs;

    De plus, le compilateur GCC nécessite que la propriété concernée ait son équivalent sous forme de variable.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 32
    Points : 17
    Points
    17
    Par défaut
    Salut,

    Merci pour tes explications.
    J'aurais une autre question, je voudrais tester mon application sur mon iphone.
    J'ai installé openSSH et je l'ai transféré. L'icone apparait bien sur l'écran de l'iphone sauf que quand je clique dessus, l'application se lance et se referme dessuite...
    Comment faire pour qu'elle fonctionne?

    Merci

  4. #4
    Membre expérimenté
    Avatar de FloMo
    Homme Profil pro
    Freelance iOS
    Inscrit en
    Juillet 2004
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Freelance iOS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 726
    Points : 1 511
    Points
    1 511
    Par défaut
    Le meilleur moyen de tester une application sur l'iPhone plutôt que sur le simulateur est de disposer d'un compte développeur officiel.

Discussions similaires

  1. demande explication sur scope
    Par ranell dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 12/01/2008, 21h32
  2. Réponses: 7
    Dernier message: 20/11/2007, 13h34
  3. Réponses: 7
    Dernier message: 21/10/2007, 01h50
  4. Demande explication sur 1 CSS
    Par tigunn dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 02/03/2007, 17h27
  5. Demande explication sur un composant ADO
    Par Golork dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/07/2005, 20h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo