我使用MPMoviePlayerViewController - 與所述播放器控制設定爲:MPMovieControlStyleFullscreenMPMoviePlayerViewController定製
我在與一些按鈕的一個問題,即在MPMovieControlStyleFullscreen:正向,反向,和全屏(具有箭頭指着彼此)。
我想刪除正向,反向和全屏按鈕,或者控制用戶點擊它們時所做的操作。
謝謝!
我使用MPMoviePlayerViewController - 與所述播放器控制設定爲:MPMovieControlStyleFullscreenMPMoviePlayerViewController定製
我在與一些按鈕的一個問題,即在MPMovieControlStyleFullscreen:正向,反向,和全屏(具有箭頭指着彼此)。
我想刪除正向,反向和全屏按鈕,或者控制用戶點擊它們時所做的操作。
謝謝!
嘗試設置你的MPMoviePlayerController
對象的MPMovieControlStyle
到MPMovieControlStyleNone
唯一的問題是我需要一種方法讓最終用戶結束視頻,如果他們不想看整個事情。 – stopmotion24 2010-08-24 20:49:38
你好,你能告訴我你怎麼能做到這一點。你製作了自己的控件嗎? – 2014-05-12 03:26:48
沒有自定義由蘋果公司提供的MPMovieControlStyle
值的方法。您需要做的是關閉Apple控制(MPMovieControlStyleNone
),然後創建您自己的自定義控件。蘋果是細跟你把你自己的UIViews到這裏的層次結構,這樣你就可以開始使用這樣的事情:
MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL: YOUR_URL];
moviePlayer.controlStyle = MPMovieControlStyleNone;
UIView *movieView = moviePlayer.view;
[movieView addSubview: _movieControlsView];
[movieView bringSubviewToFront: _movieControlsView];
凡_movieControlsView
是成立較早的代碼或IB。
美學上,你可以做你想做的,但我會建議堅持看起來像蘋果的選擇,以免混淆用戶。對於剛剛完成的項目,我創建了一個透明的按鈕,以確定電影播放器的確切大小。用我的自定義控件點擊底部控制欄中的按鈕。如果其中一個控件沒有被點擊,控制欄會在幾秒鐘後再次消失。
不適合我 - ios 7 – 2013-10-26 07:05:26
@ iTroyd23我認爲斯科特意味着製作一個覆蓋控制視圖來禁用moviePlayer的用戶交互。 – 2014-12-08 06:55:57
首先,MPMoviePlayerController與MPMoviePlayer * View * Controller有點不同,所以其中一些答案在轉換iOS 4.3+環境中構建的應用程序時會導致問題。
我已經構建了一些使用MPMoviePlayerController的應用程序,它們在iOS 3.2中生成時可以正常工作。當我用XCode 3.2.6(iOS 4.3)重建它時,視頻甚至不能在iPhone上播放。我因爲固定的,通過添加的MPMoviePlayerController實例子視圖,然後在fullScreenMode呈現模式(Player是一個UIViewController)與movplayer:
//from didSelectRowAtIndexPath
Vid *selected = [items objectAtIndex:position];
player = [[Player alloc] init];
movplayer = [[MPMoviePlayerController alloc] initWithContentURL:selected.vidURL];
movplayer.view.frame = player.view.bounds;
movplayer.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight |
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
[player.view addSubview:movplayer.view];
[self presentModalViewController:player animated:YES];
[movplayer setFullscreen:YES animated:NO];
[movplayer play];
[player release];
//movplayer is released inside - (void)exitedFullscreen:(NSNotification*)notification
這是在考慮到UINavigationBar的的完成被半停產時旋轉。
當我到達iPad版本的應用程序時,模式選項不起作用。在全屏模式下旋轉時,UISplitViewController的navBar和工具欄也被切掉了一半。所以我嘗試實現MPMoviePlayerViewController而不是MPMoviePlayerController。有了這個轉換的XCode試圖設置時,給我的錯誤:
movplayer.controlStyle = MPMovieControlStyleEmbedded;
的正確方法與MPMoviePlayerViewController要做到這一點:
movplayer.moviePlayer.controlStyle = MPMovieControlStyleEmbedded;
當玩家添加爲一個子視圖,捏手勢將在fullScreen和parentView(player.view.bounds)的大小之間順暢地切換播放器,並將工具欄和導航條保留爲父級。
//iPad version with a view (viewForMovie) inside the DetailViewController
movplayer = [[MPMoviePlayerViewController alloc] initWithContentURL:[current vidURL]];
movplayer.moviePlayer.controlStyle = MPMovieControlStyleEmbedded;
movplayer.view.backgroundColor = [UIColor clearColor];
movplayer.view.frame = viewForMovie.bounds;
[viewForMovie addSubview:movplayer.view];
因此,這兩個示例爲希望將iPhone或iPad應用程序轉換爲較新的iOS版本的用戶展示了一些解決方法。
這個問題,由另一個溢出的用戶,可能會給你一些洞察你想要完成的。希望這會有所幫助。?後來。 –
GMoP
2010-09-25 12:07:17