2009-09-02 3 views
0

im nouveau à l'iPhone SDK et le développement. Je travaille pour une entreprise qui cherche à créer des applications iPhone de preuve de concept et l'une des demandes/fonctionnalités potentielles consistait à utiliser un fichier vidéo comme arrière-plan de l'application. Je comprends que d'une expérience utilisateur pov ce n'est pas classiquement classé comme la meilleure pratique mais si je peux au moins prouver que cela peut être fait tout en énumérant les avantages et les inconvénients de le faire, cela me bénéficierait grandement.Utiliser une vidéo comme arrière-plan d'une application iPhone?

Toute aide à ce sujet est très apprécié :)

Cordialement,

Wayne

Répondre

1

Vous devriez être en mesure d'implémenter ceci via Quartz Core en utilisant des calques (voir la documentation de la classe CALayer). En effet, vous pouvez avoir des hiérarchies de calques. Cependant, comme indiqué plus haut, tenez compte de la charge lourde. Pour quelques secondes, il peut être acceptable cependant.

Fondamentalement, vous associez chaque UIView à un calque différent, puis les calques sont rendus ensemble fournissant un seul calque composite. En outre, vous pouvez également appliquer des transformations et des animations aux calques.

Vous devez importer l'en-tête de QuartzCore et faire quelque chose comme

#import <QuartzCore/QuartzCore.h> 
UIView *myView = [[UIView alloc] initWithFrame... 
UIView *myMoviewView = [UIView alloc] initWithFrame... 

CaLayer *myViewLayer = myView.layer; 
[myViewLayer addSubLayer: myMoviewView]; 

Puis, quand myView apparaît à l'écran, tous les sous-couches sont fusionnées ensemble et rendu à l'écran. Ce qui se passe est que chaque vue rend son calque, tandis que myViewLayer est rendu fusionnant les deux calques.

Vous pouvez avoir autant de couches que vous le souhaitez. Vous pouvez créer une hiérarchie arbitraire en utilisant les méthodes CALayer

– addSublayer: – removeFromSuperlayer 
– insertSublayer:atIndex: 
– insertSublayer:below: 
– insertSublayer:above: 
– replaceSublayer:with: 
+0

Excellente réponse, merci beaucoup d'avoir pris le temps de m'expliquer cela :) – Wayners247

0

Je ne sais pas s'il est possible, mais un grand con serait la lourde charge à la CPU de l'iPhone, disponible RAM, et le niveau de la batterie en faisant cela.

+0

Je réalise ceci et moi avons exprimé mes inquiétudes - ceci est censé être une application de facilité d'utilisation plutôt que quelque chose de bonbon d'oeil cependant ils me demandent encore de le prouver de toute façon. J'ai lu des articles sur des fonds d'écran animés mais jusqu'à présent, rien de ce qui concerne la vidéo. – Wayners247

0

Je ne sais pas si quelqu'un est encore qui ont besoin, mais je voudrais certainement aller pour un plein écran avec UIWebView autolayout et ayant des vidéos comme arrière-plan de la page Web. Au moins, vous pouvez jouer avec mediaquery et charger la bonne vidéo en fonction du modèle et de la fenêtre iPhone et je suppose qu'il est beaucoup plus facile de réaliser une vidéo en plein écran avec CSS3 qu'avec Obj-C ...

Questions connexes