2009-06-03 10 views
0

J'ai réussi à superposer une image au-dessus du lecteur de film (voir l'exemple de MoviePlayer d'Apple).iphone - superposer une image transparente sur le lecteur de film

Cependant, je voudrais avoir l'effet de n'avoir aucun contrôle sur l'écran, et quand l'écran est touché, ma superposition apparaît. Ma pensée était de créer une superposition avec une image qui est un fichier png transparent, et couvrir l'ensemble de l'affichage. Lorsque cette image transparente est touchée, le contrôle de superposition apparaît.

Tout fonctionne, à l'exception de l'affichage d'une image transparente sur le lecteur de film. Même avec un png transparent, l'image montre tout en noir. Si je change l'alpha pour l'UIView (superposition) les événements tactiles ne sont pas reconnus.

Je suis évidemment nouveau à travailler directement avec drawrect() donc toute idée serait appréciée.

Répondre

0

Corey, merci pour les commentaires.

J'ai une solution qui fonctionne ... si je crée l'image transparente dans le initWithFrame, par opposition à essayer de dessiner une image transparente dans drawRect, tout va bien.

0

Il n'y a pas vraiment besoin d'utiliser drawRect. Vous pouvez définir votre vue dans IB si vous le souhaitez.

Votre problème est de trouver la vue Movie Player. Vous pouvez essayer 2 choses.

d'abord essayer d'ajouter votre point de vue en tant que sous-vue de l'instance UIWindow de l'application:

[window addSubview:myCustomTransparentTouchView]; 

Voir si cela fonctionne.

Sinon, essayez une boucle à travers les sous-vues de l'instance UIWindow:

for(UIView* aView in [window subviews]){ 

    NSLog([[aView class] description]); 

} 

Et voir si je vois quelque chose comme MPPlalerView ou quoi que ce peut être appelé.

Ensuite, essayez d'ajouter quelque point de vue que vous voulez en tant que sous-vue que:

[moviePlayerViewThatIFound addSubview:myCustomTransparentTouchView]; 

Il n'y a aucune garantie que ces éléments vont travailler, mais ils sont des solutions probables.

+0

C'est une question intéressante, mais la combinaison de la question et de la réponse choisie ne fournit pas assez de contexte pour qu'un novice comme moi puisse apprendre de votre expérience. –

Questions connexes