2010-07-06 3 views
3

Est-ce que quelqu'un sait s'il est possible d'avoir un fond transparent pour un UIPopOverController sur l'iPad?iPad UIPopOverController - est-il possible d'avoir un arrière-plan transparent?

Je voudrais mettre une vue semi-transparente à l'intérieur du popover (d'où le désir pour le popover lui-même d'avoir un arrière-plan transparent).

I pense que cela ne peut pas être fait ... mais j'aimerais savoir si je me trompe!

Répondre

-3

Habituellement contrôle popover wil être transparent, nous ne pouvons pas changer le contrôle de popover à vue semi-transparent

+3

Le popover est totalement opaque, pas transparent. – Roger

-2

Il est possible d'avoir UIPopOverController d'avoir fond semi-transparent. Vérifiez l'exemple suivant.

[[[myPopOverController contentViewController] view] setAlpha:0.25f]; 
+2

Ceci sera appliqué à tout popover pas à l'arrière-plan. – Yogesh

-1

Pourquoi ne pas ajouter une vue dont l'alpha est setted à 0,5 avant de montrer vue popover

puis utilisez

presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated; 
méthode

de popover passage de référence de la vue créée.

+0

Parce que cela ne donne pas le résultat souhaité. – Olie

0

Je pense que le réglage de la transparence de la vue dans le popover ne fonctionnera pas, mais je ne l'ai jamais essayé et il pourrait.

Quoi qu'il en soit, une autre façon cool serait de prendre un rendu UIImage du principal UIView à l'intérieur du contrôleur popover.

Une fois que vous avez cette image, vous pouvez suivre ce processus, en supposant que vous savez également où le popover est positionné (son CGRect) par rapport au contrôleur de vue qui l'a ouvert.

  1. Masquer le popover.
  2. Afficher UIImage rendu dans un UIImageView transparent à la même position. (Vous pouvez ajouter vous-même une petite bordure afin qu'elle ressemble à celle du popover.)
  3. Rétros le popover.

L'effet serait que le UIPopoverController soit "passé".

Je sais que d'une manière difficile de le faire si la première solution fonctionne également, mais cela pourrait être cool de projet prendre.

Questions connexes