MPMoviePlayerController&;iPhone OS4问题

MPMoviePlayerController&;iPhone OS4问题,iphone,mpmovieplayercontroller,Iphone,Mpmovieplayercontroller,我一直在使用xcode 3.2.2开发iPhone,并使用3.O作为我的基本sdk。最近我将xcode升级到最新版本 从这里的帖子中我了解到,如果我将基本sdk设置为4.0,将开发目标设置为Os 3.0,我的应用程序将在运行Os 3.0及以上的设备上运行 我一直在使用MPMoviePlayerController来播放4.0上不可用的电影,因此我更新了代码以使用MPMoviePlayerController这在4.0设备上工作,但在3.1.2设备上不工作 我昨天发现,如果我检查设备版本,根据设备

我一直在使用xcode 3.2.2开发iPhone,并使用3.O作为我的基本sdk。最近我将xcode升级到最新版本

从这里的帖子中我了解到,如果我将基本sdk设置为4.0,将开发目标设置为Os 3.0,我的应用程序将在运行Os 3.0及以上的设备上运行

我一直在使用MPMoviePlayerController来播放4.0上不可用的电影,因此我更新了代码以使用MPMoviePlayerController这在4.0设备上工作,但在3.1.2设备上不工作

我昨天发现,如果我检查设备版本,根据设备运行的固件,我可以使用MPMoviePlayerController或mpmovieplayervicewcontroller。 现在我可以在两台设备上播放电影了

这是我的问题

在使用MPMoviePlayerServiceWController的4.0代码中,我可以使用MPMovieControlStyleNone隐藏控件,当触发MPMoviePlayerLoadStateDidChangeNotification时,我将样式设置为MPMovieControlStyleFullscreen,以便在用户点击设备之前隐藏播放控件

但当我为使用3.0设置的设备使用MPMoviePlayerController时,controlStyle会导致我的应用程序崩溃。我不能使用movieControlStyle,因为它已被弃用。同样的问题也适用于MPMoviePlayerLoadStateDidChangeNotification

有人知道我是如何设置样式和通知的吗

提前谢谢

斯科特

在没有其他选择的设备上,您仍然必须使用
movieControlMode

在没有其他选择的设备上,您仍然必须使用
movieControlMode

if ([movie respondsToSelector:@selector(setControlStyle:)]) {
    movie.controlStyle = MPMovieControlStyleNone;
} else {
    movie.movieControlMode = MPMovieControlModeHidden;
}