NSBundle pathforResource,放置电影文件的位置

时间:2011-10-03 22:25:33

标签: iphone nsbundle

我不太确定pathForResource是如何工作的。我想从我的应用程序中播放电影。我将其拖入XCode,选中该框以将其添加到子文件夹并根据需要创建目录。我将它放在一个名为视频的单独文件夹中。这个应用程序没有资源文件夹(有人删除了它,并认为最好只为每种类型的资源(img,vid等)提供文件夹。所以我不知道在哪里放弃我的电影,以及如何使用NSBundle方法访问它。这就是我所拥有的,但似乎没有。

    NSString *filepath   =   [[NSBundle mainBundle] pathForResource:@"test" ofType:@"m4v"];  
    NSURL    *fileURL    =   [NSURL fileURLWithPath:filepath];  
    MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];  
    [moviePlayerController.view setFrame:CGRectMake(120, 120, 300, 200)];
    [[NSNotificationCenter defaultCenter] addObserver:self  
                                             selector:@selector(moviePlaybackComplete:)  
                                                 name:MPMoviePlayerPlaybackDidFinishNotification  
                                               object:moviePlayerController];  
    [self.view addSubview:moviePlayerController.view];  
    moviePlayerController.fullscreen = YES;  
    [moviePlayerController play];  

感谢。

1 个答案:

答案 0 :(得分:0)

此代码应列出mainBundle中的所有内容

NSString *bundleRoot = [[NSBundle mainBundle] bundlePath];
NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:bundleRoot error:nil];
NSArray *files = [dirContents filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self ENDSWITH '.m4v'"]];
NSLog(@"Directory Start");
NSLog(@"%@",dirContents);
NSLog(@"Directory End");
NSLog(@"files: %@",files);

或者你可以去〜用户/图书馆/应用程序支持/ iPhone模拟器找到你的应用程序并右键单击它并显示内容以查看你的应用程序的目录结构。