Youtube и модальные виды - PullRequest
1 голос
/ 16 марта 2012

У меня есть вопрос, который, очевидно, является основным. У меня есть приложение, в котором есть раздел мультимедиа с видео (Youtube или Ted).

Когда вы выбираете видео (TableView), я открываю модальное представление с небольшим описанием и, если это видео на Youtube, веб-представление, где вы должны щелкнуть по нему, чтобы открыть видео. В другом случае я использую MPMovieController.

У меня проблема с видео на Youtube. Когда я закрываю проигрыватель, моё модальное представление также закрывается, и остальная часть приложения, которое использует модальные представления, не работает (это не открывает модальные представления).

Вот код для описания описания:

- (void)viewDidLoad{

[super viewDidLoad];

NSRange range = [sendVideo rangeOfString:@"youtube"];


if(range.length>0){


    NSString *htmlString =[NSString stringWithFormat:@"<html><head>"
                           "<meta name = \"viewport\" content = \"initial-scale = 1.0, user-scalable = no, width = 212\"/></head>"
                           "<body style=\"background:#F00;margin-top:0px;margin-left:0px\">"
                           "<div><object width=\"212\" height=\"172\">"
                           "<param name=\"movie\" value=\"%@\"></param>"
                           "<param name=\"wmode\" value=\"transparent\"></param>"
                           "<embed src=\"%@\""
                           "type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"212\" height=\"172\"></embed>"
                           "</object></div></body></html>",sendVideo,sendVideo];



    [youtube loadHTMLString:htmlString baseURL:nil];



}

else

{...

Вот код, который я использую для выбора видео в TableView:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {


if(videosContenido ==YES){



    VerDetalles *vd = [[[VerDetalles alloc]initWithNibName:@"VerDetalles"

                                                   bundle:nil]autorelease];



    vd.sendTitle = [aux2 objectAtIndex:[indexPath row]];

    vd.sendDesc = [aux6 objectAtIndex:[indexPath row]];

    vd.sendVideo = [aux4 objectAtIndex:[indexPath row]];

    UINavigationController *navController= [[[UINavigationController alloc]

                                            initWithRootViewController:vd]autorelease];

    if(navController){

        navController.modalPresentationStyle = UIModalPresentationFormSheet;

        navController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

    }else {

        [tableView deselectRowAtIndexPath:indexPath animated:YES];

    }

    [self presentModalViewController:navController  animated:YES];  

}

1 Ответ

0 голосов
/ 19 сентября 2012

У меня точно такая же проблема. Я заметил, что не установка свойства window.rootViewController в моем делегате приложения решает проблему. (Просто вызовите [window addSubview: rootViewController.view]). Однако в iOS 6 автоматическое вращение не работает, если rootViewController окна не установлен.

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