2010-06-10 8 views
0

C'est la première fois que j'utilise UIWebView et la première fois que j'utilise la vidéo dans l'iPhone. Les jeux vidéo, MAIS:Intégrer Youtube dans UIWebView derrière img transparent. Wmode transparent et z-index ne fonctionne pas

Je veux avoir une vieille télévision scolaire (coins arrondis) au premier plan avec des commutateurs et ainsi de suite. La télévision est une image avec des pixels transparents au milieu, de sorte qu'une vidéo située derrière la télé brillera comme si la vidéo serait montrée sur la télé.

Mais tout d'abord, la vidéo a une bordure que je ne peux pas supprimer et la seconde est toujours au premier plan. Dans Safari et Firefox sur Mac, ça marche. Donc, est-ce une chose iPhone, pourrait-il être que cela ne fonctionnera tout simplement pas sur iPhone? Ou est-ce que j'ai des fautes de frappe css/html?

J'utilise ce code:

- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame { 
    NSString *embedHTML = @"\ 
    <html><head>\ 
    <style type=\"text/css\">\ 
    body {\ 
    background-color: black;\ 
    }\ 
    #container{\ 
    position: relative;\ 
    z-index:1;\ 
    }\ 
    #video,#videoc{\ 
    position:absolute;\ 
    z-index: 1;\ 
    border: none;\ 
    }\ 
    #tv{\ 
    background: transparent url(tv.png) no-repeat;\ 
    width: 320px;\ 
    height: 205px;\ 
    position: absolute;\ 
    top: 0;\ 
    z-index: 999;\ 
    }\ 
    </style>\ 
    </head><body style=\"margin:0\">\ 
    <div id=\"tv\"></div>\ 
    <object id=\"videoc\" width=\"240\" height=\"160\">\ 
    <param name=\"movie\" value=\"%@\"></param>\ 
    <param name=\"wmode\" value=\"transparent\"></param>\ 
    <embed wmode=\"transparent\" id=\"video\" src=\"%@\" type=\"application/x-shockwave-flash\" \ 
    width=\"240\" height=\"160\"></embed>\ 
    </object>\ 
    </body></html>"; 
    NSString *path = [[NSBundle mainBundle] bundlePath]; 
    NSURL *baseURL = [NSURL fileURLWithPath:path];  
    NSString *html = [NSString stringWithFormat:embedHTML, urlString,urlString]; 
    UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame]; 
    [videoView loadHTMLString:html baseURL:baseURL]; 
    [self.view addSubview:videoView]; 
    [videoView release];  
} 
+0

Eh bien, j'ajouter maintenant le téléviseur dans un UIImageView au-dessus de la UIWebView, il travaille et pas grand d'un hack, je vais donc aller avec elle, mais peut-être que quelqu'un peut encore répondre à cette question? – Allisone

Répondre

0

Je ne l'ai pas trouvé un css/html/js solution. Maintenant, j'ajoute TV.png à un UIImageView et je place cette vue sur le dessus de l'UIWebView, ça marche et ce n'est pas un gros bidouillage, donc je vais y aller, mais peut-être que quelqu'un peut toujours répondre à l'original question?

donc ma commande actuelle de la couche est maintenant:

UIView 
    add: UIWebView 
    add: UIImageView (with UIImage TV.png)