Как заново установить высоту и ширину встроенного проигрывателя с помощью CSS? - PullRequest
2 голосов
/ 03 августа 2011

Я хочу создать пару CSS для управления ориентацией встроенного видеоплеера в UIWebView.И эти CSS должны работать для изменения размера плеера в соответствии с ориентацией устройства.

Как я могу создать и добавить CSS в своем приложении для iPhone, чтобы выполнить следующий код с моим iPhone / iPad?

    <link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">  
    <link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">

РЕДАКТИРОВАТЬ:

Ниже приведен код, который я сделал для встроенного видео. (* YouTubePlayer является экземпляром UIWebView.)

    NSString* embedHTML = @"<html><head><style=\"margin:0\" link rel=\"stylesheet\" media=\"all and (orientation:portrait)\" href=\"portrait.css\">"
    "<link rel=\"stylesheet\" media=\"all and (orientation:landscape)\" href=\"landscape.css\">"
    "</style></head>"
    "<body embed id=\"yt\" src=\"%@\"type=\"application/x-shockwave-flash\"></embed>"
    "</body></html>";
    NSString* html = [NSString stringWithFormat:embedHTML, url];
    NSString *path = [[NSBundle mainBundle] bundlePath];
    NSURL *baseURL = [NSURL fileURLWithPath:path];
    [youTubePlayer loadHTMLString:html baseURL:baseURL];

А также добавил landscape.css body {width:1002;высота: 768;}

портрет.css тело {ширина: 768;высота: 1024;}

Даже если он не работает должным образом.Что не так с кодом, пожалуйста, дайте мне знать.

Ответы [ 2 ]

1 голос
/ 03 августа 2011

Наконец я добрался до пункта назначения и разобрался с проблемой по следующему коду. Он отлично работает с видео на YouTube, а также устанавливает ориентацию UIWebview. Преимущество следующего кода заключается в том, что он не перезапускает видео об изменении ориентации устройства.

    NSString* embedHTML = @"<html><head><link rel=\"stylesheet\" media=\"all and (orientation:portrait)\" href=\"portrait-ipad.css\"><link rel=\"stylesheet\" media=\"all and (orientation:landscape)\" href=\"landscape-ipad.css\"></head><body><iframe type=\"text/html\" src=\"http://www.youtube.com/embed/%@\" frameborder=\"0\"></iframe></body></html>";
    NSString *videoID = [url stringByReplacingOccurrencesOfString:@"http://www.youtube.com/watch?v=" withString:@""];
    videoID = [videoID stringByReplacingOccurrencesOfString:@"&feature=youtube_gdata" withString:@""];
    html = [NSString stringWithFormat:embedHTML, videoID];      
    NSString *path = [[NSBundle mainBundle] bundlePath];
    NSURL *baseURL = [NSURL fileURLWithPath:path];
    [youTubePlayer loadHTMLString:html baseURL:baseURL];

(youTubePlayer является экземпляром UIWebView.)

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

вам просто не хватает px после вашей ширины и высоты? например, портрет.css тело {ширина: 768 пикселей; высота: 1024 пикселей; } вместо Portrait.css Body {ширина: 768; высота: 1024; }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...