gpt4 book ai didi

iphone - RespondsToSelector 返回假阴性?

转载 作者:行者123 更新时间:2023-12-03 21:21:25 26 4
gpt4 key购买 nike

我目前正在使用 -respondsToSelector:,如下所示:

if (![moviePlayer respondsToSelector:@selector(currentPlaybackTime)]) {
NSLog(@"Cannot get current playbackTime on %@", moviePlayer);
return;
}

其中 moviePlayer 是实例化的 MPMoviePlayerController 对象。我做了很多其他类似的选择器检查,所以我知道几乎所有其他东西都工作正常,但由于某种原因,此respondsToSelector 检查返回 false,即使我做了类似 time = [moviePlayer currentPlaybackTime],它工作正常。这是在 4.0+ iOS 上,因此没有理由返回 false。

有什么原因会发生这种情况吗?

最佳答案

根据 iOS 类引用, currentPlaybackTimeMPMusicPlayerController 的属性,而不是 MPMoviePlayerController

<罢工>

MPMusicPlayerController: http://developer.apple.com/library/ios/#documentation/MediaPlayer/Reference/MPMusicPlayerController_ClassReference/Reference/Reference.html

MPMoviePlayerController: http://developer.apple.com/library/ios/#documentation/MediaPlayer/Reference/MPMoviePlayerController_Class/MPMoviePlayerController/MPMoviePlayerController.html

它可能是没有访问器的 MPMoviePlayerController 的私有(private)属性。

编辑(参见评论)

确定操作系统版本:

float iPhoneOSVersion = [[[UIDevice currentDevice] systemVersion] floatValue];

if ( iPhoneOSVersion < 3.2 )
{

}
else
{

}

关于iphone - RespondsToSelector 返回假阴性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4209679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com