2010-04-18 7 views
1

J'ai récemment commencé un projet, en utilisant le projet d'exemple Application Application d'Apple. Dans l'exemple de projet, il y a un bouton d'information qui montre une instance de FlipSideView. Si vous connaissez le Weather.app, vous savez à quoi ressemble le bouton.UIViewController presentModalViewController: animé: ne rien faire?

J'ai ensuite changé le MainWindow.xib pour contenir une scrollview au milieu de la fenêtre et une vue de contrôle de page au bas de la fenêtre (encore une fois, comme le Weather.app). Le scrollview est rempli avec des instances de MainView. Lorsque j'ai ensuite cliqué sur le bouton d'information, le FlipSideView s'affichait, mais uniquement dans la zone précédemment remplie par l'instance MainView - cela signifie que l'affichage du contrôle de page au bas de la page s'affichait toujours lorsque l'instance FlipSideView était chargée. Donc, j'ai pensé que j'ajouterais simplement un UIViewController pour la fenêtre la plus haute, qui est celle déclarée dans le AppDelegate créé en même temps que le projet. J'ai donc créé une sous-classe de UIViewController, en ai mis une instance à l'intérieur de MainWindow.xib et connecté sa sortie view à l'UIWindow déclarée comme fenêtre dans le délégué de l'application. J'ai également changé l'action du bouton, de sorte qu'il sais envoie un message à l'instance de MainWindowController. Le message est envoyé (j'ai vérifié avec les instructions NSLog()), mais le FlipSideView n'est pas affiché. Voici le code correspondant (?):

FlipsideViewController *controller = [[FlipsideViewController alloc] initWithNibName:@"FlipsideView" bundle:nil]; 
controller.delegate = self; 

controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentModalViewController:controller animated:YES]; 

[controller release]; 

Pourquoi est-ce ne fonctionne pas à l'intérieur de MainWindowController, mais exactement le même code fonctionne à l'intérieur de MainViewController? J'ai téléchargé le projet entier here pour que vous puissiez voir le tout.

Merci pour votre aide!

- Ry

EDIT: Je pense qu'il pourrait être lié à me attacher à une instance UIWindow la sortie de vue du UIViewController. Je le connecte maintenant à un UIView, et ça fonctionne parfaitement bien.

Répondre

2

Pour la petite histoire, la réponse a été ajoutée à la question. Ryyst dit:

Je pense qu'il pourrait être lié à me attacher à une instance UIWindow de sortie vue du UIViewController. Je le connecte maintenant à un UIView, et c'est qui fonctionne parfaitement bien.

Questions connexes