Вставить Youtube в UIWebView за прозрачным IMG. Wmode прозрачный и z-index не работает - PullRequest
0 голосов
/ 10 июня 2010

Впервые я использую UIWebView и впервые использую видео в iPhone. Воспроизведение видео, НО :

Я хочу, чтобы на переднем плане был телевизор старой школы (с круглыми углами) с переключателями и так далее. Телевидение - это изображение с прозрачными пикселями посередине, так что видео, лежащее за телевизором, будет просвечивать, как если бы оно показывалось по телевизору.

Но, во-первых, у видео есть рамка, которую я не могу удалить, а во-вторых, оно всегда на переднем плане. В Safari и в Firefox на Mac это работает. Так что же это iPhone, может ли он просто не работать на iPhone? Или у меня есть некоторые опечатки CSS / HTML?

Я использую этот код:

- (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];      
}

1 Ответ

0 голосов
/ 22 августа 2011

Я не нашел решения css / html / js.

Так что теперь я добавляю TV.png в UIImageView и кладу этот вид поверх UIWebView, он работает и не такой уж большойхак, так что я пойду с этим, но, может быть, кто-то еще может ответить на оригинальный вопрос?

Итак, мой текущий порядок слоев теперь:

UIView
  add: UIWebView
  add: UIImageView (with UIImage TV.png)  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...