2010-09-03 11 views
0

D'accord, je suis encore à apprendre comment programmer et les choses bougent très bien le long, mais j'ai une question pour le groupe au sujet de quelque chose qui a été me affligent:spécifique vue modal iPad

Comment puis-je créer une pop voir où l'arrière-plan peut encore être vu? Je veux dire, disons que ma vue iPad a 5 boutons dessus, et je veux qu'un petit carré apparaisse là où ce bouton était, posant une question à l'utilisateur - comment ferais-je cela? Puis-je faire une vue modale avec un fond invisible? (Je ne veux pas un UIAlert BTW - Je sais que cela résoudrait mon problème, mais j'essaie d'apprendre comment le faire avec ma propre vue)

Quelqu'un peut-il me diriger dans la bonne direction?

Répondre

0

Vous dites "pop view" ce qui me fait penser que vous décrivez un popover. Avez-vous lu le Guide de programmation de l'iPad, en particulier, la section "Creating and Presenting a Popover"? Il est vraiment nécessaire de lire dans ce cas.

Montrez-vous le popover à partir d'un bouton de barre? Si c'est le cas, vous devez utiliser presentPopoverFromBarButtonItem:permittedArrowDirections:animated:. Sinon, vous devez identifier un CGRect représentant le bouton (vous pouvez utiliser bounds), puis utiliser presentPopoverFromRect:inView:permittedArrowDirections:animated:.

Vous ne voulez pas masquer le bouton avec le popover. Lorsque vous montrez le popover en utilisant les méthodes ci-dessus, le framework prendra soin de positionner le popover à l'écran. Utilisez le UIPopoverArrowDirectionAny pour les directions chaque fois que possible.

Si vous souhaitez réellement afficher une vue modale, vous pouvez créer la vue souhaitée, puis l'afficher de telle sorte que l'arrière-plan ne soit pas complètement masqué. Réglez simplement le modalPresentationStyle du contrôleur de vue sur quelque chose comme UIModalPresentationPageSheet.

0

Vous devez créer un UIView personnalisé avec les dimensions et le contenu que vous souhaitez afficher. Ensuite, vous pouvez placer le UIView personnalisé à l'écran en appelant quelque chose comme:

//where 'self' is the view controller currently visible and 'customView' is 
//the view which has the question for the user. Don't forget to set the 
//frame property on customView so that it knows the correct place to display. 
[self.view addSubview:customView]; 

Espérons que cela aide. Andrew

+0

Vous ne savez pas exactement ce que vous voulez dire en créant un UIView. Est-ce quelque chose qui doit être entièrement codé? J'ai essayé d'ajouter un "View" à la plume de la vue que je veux appeler cette vue, mais il ne semble pas fonctionner correctement. Dois-je créer un nouveau contrôleur de vue et une nouvelle plume pour cet UIView? – startuprob

+0

désolé ma réponse n'était pas très claire. Êtes-vous satisfait de la réponse ci-dessus? ou, vouliez-vous créer une vue modale personnalisée? Je décrivais une façon de créer une vue personnalisée qui pourrait être placée n'importe où sur l'écran sans obscurcir le reste de l'interface utilisateur. Si vous cherchez toujours une réponse, s'il vous plaît faites le moi savoir et je vais essayer à nouveau :-) –

Questions connexes