0

Si je vous présente le modalement compositeur mail, il fonctionne très bien (ici, MFMailComposeViewController* _mailer);Pourquoi ma vue Mail Composer ne s'affiche-t-elle pas correctement?

[self presentModalViewController:_mailer animated:YES]; 

Cependant, si j'ajoute la vue à la vue actuelle,

[self.view addSubview: _mailer.view]; 

la vue compositeur ne va pas Il y a un espace de quelques lignes entre le haut de la vue MFMailComposer et la barre d'état

La raison pour laquelle je veux ajouter la vue au lieu de la présentation modale est que J'utilise une barre d'onglets et je ne veux pas qu'elle soit cachée. [Vous vous demandez peut-être pourquoi n'attache-t-il pas directement la fenêtre du compositeur à la barre d'onglets? La raison en est que le MFMailComposer fait partie d'un flux de travail lancé à partir d'un onglet mais qui ne démarre pas avec la vue compositeur].

La documentation Apple dit:

Pour afficher la vue gérée par ce contrôleur de vue, vous pouvez utiliser des techniques standard pour l'affichage des contrôleurs de vue »

Quelqu'un at-il. une idée de pourquoi l'écart en haut ou comment faire le compositeur de courrier pour jouer gentil?

+0

Si vous avez un "workflow" dans la barre d'onglets, avez-vous envisagé d'utiliser un UINavigationController au lieu de simplement ajouter manuellement la vue? – jtbandes

Répondre

0

Essayez de définir le cadre de _mailer.view égal aux limites de self.view. Imaginez que sa trame par défaut essaie de compenser la barre d'état qui est en haut. (Je suppose que l'origine de la vue est par défaut de 20 au lieu de 0)

+0

Merci pour la réponse. Curieusement, cela n'a rien changé! Je pense que vous avez raison de dire que le compositeur de courrier économise de la place pour quelque chose en haut qu'il n'a pas besoin d'économiser de l'espace. La seule chose qui a fonctionné (mais pas dans toutes les conditions) était de soustraire 20 de la coordonnée y de la trame. Personnellement, je pense que c'est un bug. J'ai décidé de ne pas me battre avec. La présentation modale est la seule chose qui fonctionne correctement donc j'ai l'intention de travailler avec ce qui fonctionne. Merci encore Paul – carmanahip

Questions connexes