Vidéo: Créer un rendez vous sur l'iphone depuis l'application Calendrier 2025
Si Trip doit utiliser un objet Events dans votre application iOS, tu ferais mieux de créer la classe. Ceci est un bon exemple de la façon dont les programmeurs polyvalents peuvent être dans le développement d'applications. Procédez comme suit:
-
Dans le navigateur de projet, sélectionnez le groupe Classes modèles puis cliquez avec le bouton droit sur la sélection et choisissez Nouveau fichier dans le menu qui apparaît ou choisissez Fichier → Nouveau → Fichier dans le menu principal N).
Quelle que soit la méthode choisie, vous êtes accueilli par la boîte de dialogue Nouveau fichier.
-
Dans la colonne de gauche de la boîte de dialogue, sélectionnez Cocoa Touch sous l'en-tête iOS, sélectionnez le modèle Objective-C Class dans le volet supérieur droit, puis cliquez sur Suivant.
Vous verrez une boîte de dialogue qui vous permettra de choisir les options pour votre fichier.
-
Entrer les événements dans le champ Classe.
-
Choisissez ou entrez NSObject dans le champ Sous-classe de, puis cliquez sur Suivant.
Les cases à cocher iPad et Avec XIB pour l'interface utilisateur sont grisées car elles ne sont pas pertinentes ici - Les événements sont dérivés de NSObject et non de n'importe quel contrôleur de vue.
-
Dans la feuille Enregistrer qui s'affiche, cliquez sur Créer.
La classe Events est l'objet modèle qui gère les événements. Vous pouvez imaginer que la classe Events pourrait être étendue pour en faire beaucoup plus - comme renvoyer l'emplacement, traiter des événements de plusieurs sources ou même permettre à un utilisateur d'ajouter ses propres événements.
Pour commencer à ajouter la classe Events, ajoutez le code en gras aux Events. h.
Evénements @interface: NSObject - (id) initWithDestinationIndex: (NSUInteger) destinationIndex; - (NSUInteger) numberOfEvents; - (NSString *) getEvent: (NSUInteger) index; -d
Ce code a trois méthodes: une méthode d'initialisation et deux méthodes pour traiter les demandes de voyage.
Ensuite, vous devez ajouter une propriété. Ajoutez le code en gras aux événements. m pour créer une extension de classe avec une propriété. (L'extension de classe de base sans la propriété peut déjà être dans votre projet.)
#import "Evénements.h" @interface Evénements () @property (strong, nonatomic) NSMutableArray * events; -d @implementation Events
Comme vous pouvez le voir, il existe une méthode d'initialisation (qui est utilisée par quand elle crée l'objet). Ajoutez le code aux événements. m pour implémenter la méthode initWIthDestinationIndex: initialization.
- (id) initWithDestinationIndex: (NSUInteger) destinationIndex {self = [super init]); if (self) {NSString * filePath = [[NSBundle mainBundle] pathForResource: @ "Destinations" deType: @ "plist"]; NSDictionary * destinations = [NSDictionary dictionaryWithContentsOfFile: filePath]; NSArray * destinationsArray = destinations [@ "DestinationData"]; NSDictionary * data = destinationsArray [destinationIndex]; soi.events = [NSMutableArray arrayWithArray: données [@ "Events"]];} return self;}
À ce stade, vous obtenez le tableau des URL pour les pages HTML que vous avez créées et saisies dans le widget Destinations. Il place ces URL dans un tableau que vous créez - pour une récupération plus efficace plus tard.
Le EventsController, comme vous le verrez, devra connaître le nombre d'événements et les informations sur l'événement. Vous avez ajouté les méthodes à Trip, mais vous obtiendrez ces informations à partir des événements. Ajoutez le code aux événements. m pour implémenter la méthode qui renvoie le nombre d'événements.
- (NSUInteger) numberOfEvents {return [self. nombre d'événements];}
Pour obtenir le nombre d'événements, vous renvoyez le nombre du tableau.
EventsController devra également avoir une liste des URL des événements. Ajoutez le code dans la liste 16-10 aux événements. m pour implémenter cette méthode.
- (NSString *) getEvent: (NSUInteger) index {renvoyer moi-même. events [index];}
Pour retourner un événement, vous renvoyez l'URL basée sur l'index dans le tableau. Cela aura plus de sens lorsque vous passerez par le code EventsController et EventPageController.
