2011-01-28 8 views
1

사용자가 tableView에서 행을 누르면 일부 비디오를 스트리밍하려고합니다. iOS 4.2를 사용하고 있는데, 소리가 나긴하지만 테이블 뷰가 누를 수 없어 비디오를 볼 수 없습니까? 나는 이것이 거친 초보자 실수라고 확신하지만 ... 나는 초보자입니다 !!! 미리 감사드립니다 !!!MPMoviePlayerController 사용하여 소리가 있지만 비디오가 나타나지 않음

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

    NSString *video; 
    NSString *url; 

    NSUInteger row = [indexPath row]; 
    video = [self.videoTitles objectAtIndex:row]; 

    if ([video isEqualToString:@"Shimmy"]) { 
    url = @"http://www.andalee.com/iPhoneVideos/mov.MOV"; 
    MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] 
     initWithContentURL:[NSURL URLWithString:url]]; 
    [moviePlayer play]; 

    } else if ([video isEqualToString:@"Camel"]) { 
    url = @"http://www.andalee.com/iPhoneVideos/mov.MOV"; 
    MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] 
      initWithContentURL:[NSURL URLWithString:url]]; 
    [[self view] addSubview:[moviePlayer view]]; 
    [moviePlayer play]; 

} 

[video release]; 
[url release]; 

}

답변

1

iOS 3.2 이상에서는 MPMoviePlayerViewController을 사용하십시오.

MPMoviePlayerViewController *moviePlayerController 
    = [[[MPMoviePlayerViewController alloc] 
     initWithContentURL:[NSURL URLWithString:url]] 
      autorelease]; 
[self presentMoviePlayerViewControllerAnimated:moviePlayerController]; 
1

당신은 당신의 컨트롤러의보기로 동영상 플레이어의보기를 추가하고, 그래서 다른 모든 뷰의 상단에 나타납니다. 그것이 원하는 곳이라면 먼저 플레이어 뷰의 프레임을 새로운 슈퍼 뷰의 범위로 설정해야합니다. 아시다시피, 플레이어보기의 경계는 비어있을 수 있습니다.

플레이어보기를 나타 내기 위해 테이블을 멀리 슬라이드 시키려면 플레이어가 다른 UIViewController보기의 하위보기를보고 내비게이션 스택에서 다른 컨트롤러를 밀게하는 것이 좋습니다.

관련 문제