大家好。最近困扰我的事情是我组装的这个自定义电影播放器。它主要基于一个工作的,NGMoviePlayer
.
问题是这样的:我有.xib
一个 UIKit 友好的资源包。当我打电话时:
[MyMoviePlayerViewController initWithNibName:@"MyMoviePlayerViewController"
bundle:[NSBundle bundleWithPath:
[[NSBundle mainBundle] bundlePath]
stringByAppendingPathComponent:@"MyMoviePlayerViewController.bundle"]];
..在我的自定义类上,然后访问view
(因此调用loadView
)它不会引发任何错误,但它实际上也不会正确加载插座。我看到一个白屏,调试显示所有视觉元素都是0x0
,但没有出现预期的错误。
编辑:我现在也尝试在我的目标应用程序的资源包之外加载 .xib,并且发生了同样的事情(白屏)。
我正在寻找的特别是:
Could not load NIB <nibname>...
如果根本没有找到,或者...loaded the <nibname> NIB but the view outlet was not set
如果找到但未正确连接
xib 在本地应用程序中(我知道静态库不能包含 xib)。NGMoviePlayerDemo
我已经尝试在 的作者提供的项目中使用相同的资源包,NGMoviePlayer
但它确实会引发错误:
Could not load NIB in bundle:
'/Users/.../MyMoviePlayerViewController.bundle (not yet loaded)'
with name 'MyMoviePlayerViewController'
我已导航到它为捆绑包显示的路径,并且该位置存在一个MyMoviePlayerViewController.xib
文件。
我也尝试过使用bundle:nil
,以防 Xcode 出于某种原因将捆绑目录的资源与主要目录的资源结合在一起。这两种情况都不会引发错误并在我的实际项目中显示白屏。这两种情况都会在项目中引发Could not load NIB
错误。NGMoviePlayerDemo
编辑:我已经尝试过与应用程序中的资源包分开的相同 .xibNGMoviePlayerDemo
并且它工作正常。
非常感谢所有输入。