如何检测iPhone MPMoviePlayer控件何时出现/消失?
我试图在MPMoviePlayerController视图(OS 2.x及更高版本)中的标准回放/播放/前进控件的左右两侧添加自定义按钮。我已经知道如何将它们添加到播放器窗口,但它们始终可见。是否有办法检测标准控件何时出现和消失?查看movieControlMode属性。您可以设置MPMovieControlMode MPMovieControlMode用于显示电影播放控件的选项如何检测iPhone MPMoviePlayer控件何时出现/消失?,iphone,mpmovieplayercontroller,mpmovieplayer,Iphone,Mpmovieplayercontroller,Mpmovieplayer,我试图在MPMoviePlayerController视图(OS 2.x及更高版本)中的标准回放/播放/前进控件的左右两侧添加自定义按钮。我已经知道如何将它们添加到播放器窗口,但它们始终可见。是否有办法检测标准控件何时出现和消失?查看movieControlMode属性。您可以设置MPMovieControlMode MPMovieControlMode用于显示电影播放控件的选项 typedef enum { MPMovieControlModeDefault, MPMovieCon
typedef enum {
MPMovieControlModeDefault,
MPMovieControlModeVolumeOnly,
MPMovieControlModeHidden
}
MPMovieControlMode
您还可以查看MPMoviePlayerScalingModeddChangeNotificationiOS3.2之前的版本 检测“残疾”很容易: 检测appierance有点困难(也许有更好的方法):
。。。
[moviePlayerController播放];
mainTimer=[NSTimer scheduledTimerWithTimeInterval:1/100目标:自选择器:@selector(勾选)用户信息:无重复:是];
-(无效)勾选{
如果([[[UIApplication sharedApplication]windows]计数]<2)返回;
MoviePlayerWindows=[[UIApplication sharedApplication]windows]对象索引:1];
if(电影播放器窗口){
[mainTimer invalidate],mainTimer=nil;
//这是你的电影剧本
}
}
好的,明白了,这样做:
BOOL controlsVisible = NO;
for(id views in [[_moviePlayer view] subviews]){
for(id subViews in [views subviews]){
for (id controlView in [subViews subviews]){
controlsVisible = ([controlView alpha] <= 0.0) ? (NO) : (YES);
}
}
}
NSLog(@"player controls are visible: %d", controlsVisible);
BOOL controlsVisible=NO;
对于(在[[[u moviePlayer view]子视图中的id视图]){
对于(id子视图在[视图子视图]中){
对于(id控制视图位于[子视图子视图]){
controlsVisible=([controlView alpha]cybercow的答案是正确的,只需稍加修改即可使答案更准确
BOOL controlsVisible = NO;
for(id views in [[self.moviePlayerViewController view] subviews])
{
for(id subViews in [views subviews])
{
for (id controlView in [subViews subviews])
{
if ([controlView isKindOfClass:[UIView class]] && ((UIView*)controlView).tag == 1004)
{
controlsVisible = ([controlView alpha] <= 0.0) ? (NO) : (YES)
}
}
}
}
BOOL controlsVisible=NO;
用于([[self.movieplayervewcontroller视图]子视图中的id视图])
{
对于(id子视图在[视图子视图]中)
{
对于(id控制视图位于[子视图子视图])
{
如果([controlView isKindOfClass:[UIView类]]&((UIView*)controlView).tag==1004)
{
controlsVisible=([controlView alpha]我知道如何启用控件,我要寻找的是控件出现和消失时的通知(例如,当用户点击屏幕时)。我指的是出现在电影顶部HUD中的播放器控件。这些控件将在移动播放时出现和消失(例如,当用户点击电影时)。喜欢你的方法…!!和+1。上帝保佑你,先生!
BOOL controlsVisible = NO;
for(id views in [[_moviePlayer view] subviews]){
for(id subViews in [views subviews]){
for (id controlView in [subViews subviews]){
controlsVisible = ([controlView alpha] <= 0.0) ? (NO) : (YES);
}
}
}
NSLog(@"player controls are visible: %d", controlsVisible);
BOOL controlsVisible = NO;
for(id views in [[self.moviePlayerViewController view] subviews])
{
for(id subViews in [views subviews])
{
for (id controlView in [subViews subviews])
{
if ([controlView isKindOfClass:[UIView class]] && ((UIView*)controlView).tag == 1004)
{
controlsVisible = ([controlView alpha] <= 0.0) ? (NO) : (YES)
}
}
}
}