Question

Je suis nouveau à la programmation iPhone. Dans mon application j'ai HomeViewController et ContentViewController. Je sauve les valeurs ContentViewController en utilisant NSUserDefaults et en fonction des valeurs enregistrées je vais charger le ContentView au lieu de AccueilVoir lorsque l'application redémarre. s'il n'y a pas de r valeurs dans les NSUserDefautls il affiche le AccueilVoir.

AccueilVoir j'ai quelques buttons..its comme ça .. chaque bouton est un livre ainsi dans tous les contentView nos pages Les (en bas dans une vue de défilement ContentView) sera affiché si je clique sur une page non il affiche le texte de l'étiquette au-dessus de ContentView.if l'utilisateur ferme l'application dans contentView, la page non et livre ne sera sauvé ... si l'utilisateur clique sur le bouton d'accueil toutes les informations seront supprimées. Dans l'im homeview vérifier les NSUserDefaults, si elle contient des valeurs, il doit afficher cette page exacte de ce livre  ce qui suit est le code ...

// HomeViewController.m

  • (void) {viewDidLoad

[super viewDidLoad];

contentViewController = [[ContentViewController alloc] initWithNibName: @ paquet "ContentView": nil];

* NSUserDefaults prefs = [NSUserDefaults standardUserDefaults];

NSLog (@ "...% d,% d,% d", [prefs integerForKey: @ "Stage"], [prefs integerForKey: @ "stimulation"], [prefs integerForKey: @ "Carte"]) ;

if ((! [Prefs integerForKey: @ "Stage"] == 0 && [prefs integerForKey: @ "stimulation"] == 0 && [prefs integerForKey: @ "Carte"] == 0)) {

[contentViewController setCurrentState: [prefs integerForKey: @ "Stage"]];

[contentViewController setCurrentStimulus: [prefs integerForKey: @ "stimulation"]];

[contentViewController setCurrentCard: [prefs integerForKey: @ "Carte"]];

[auto presentModalViewController: contentViewController animé: OUI];

} 

}

mais son affichage de la AccueilVoir ...

peut aider quelqu'un me out ....... s'il vous plaît

Était-ce utile?

La solution

Essayez d'utiliser la méthode viewDidAppear ci-dessous au lieu de viewDidLoad

- (void)viewDidAppear:(BOOL)animated 
{
  contentViewController = [[ContentViewController alloc] initWithNibName:@"ContentView" bundle:nil];

  NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

  NSLog(@"...%d,%d,%d",[prefs integerForKey:@"Stage"],[prefs integerForKey:@"Stimulus"],     [prefs integerForKey:@"Card"]);

if(!([prefs integerForKey:@"Stage"] ==0 && [prefs integerForKey:@"Stimulus"] ==0 &&     [prefs integerForKey:@"Card"] ==0))
  {
   [contentViewController setCurrentState:[prefs integerForKey:@"Stage"]];
   [contentViewController setCurrentStimulus:[prefs integerForKey:@"Stimulus"]];
   [contentViewController setCurrentCard:[prefs integerForKey:@"Card"]];
   [self presentModalViewController:contentViewController animated:YES];
  }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top