'MPMoviePlayer'からすべてのボタンを含むビューを取得する方法を誰かに提案できますか?
わからない場合は、少なくともMPMoviePlayerのメインビュー/ウィンドウを取得する方法。
更新:コントローラービューにボタンを追加するには、これを行う必要があります。次のようになります。 例http://img338.imageshack.us/img338/5184/poz.jpg
前もって感謝します!
'MPMoviePlayer'からすべてのボタンを含むビューを取得する方法を誰かに提案できますか?
わからない場合は、少なくともMPMoviePlayerのメインビュー/ウィンドウを取得する方法。
更新:コントローラービューにボタンを追加するには、これを行う必要があります。次のようになります。 例http://img338.imageshack.us/img338/5184/poz.jpg
前もって感謝します!
MPMoviePlayerControllerのビューに直接追加することはできません。これはプライベートビューであり、アクセスできません。ボタンを追加する場合は、すべての上に透明なウィンドウを作成し、それにボタンを追加する必要があります。
AppleのMoviePlayerサンプルは、これを行う方法を示しています。
上記の答えは実際には正しくありません。ビューはプライベートではなく、ビューを追加できます。あなたはそれを見つけるのに十分深く潜る必要があります。
たとえば、iOS 5.1では、次のようなことを試すことができます。
UIView *fullscreenOverlayView = [[[[[[[mpPlayer view] subviews] objectAtIndex:0] subviews] objectAtIndex:0] subviews] objectAtIndex:2];
[fullscreenOverlayView addSubview:ccButton];
これにより、ビューにCCボタンが追加され、CCボタンのフレームに正しい値を指定すると、ボタンがコントロールパネルに挿入され、コントロールパネルをタッチして非表示/表示します。参考:これは私が使用するフレームです:
BOOL isPortrait = UIInterfaceOrientationIsPortrait([UIApplication sharedApplication].statusBarOrientation);
// all of these values are just based on measurement on screen
// to make sure that the CC button "seems" to be part of the player's control panel
if (isPortrait)
{
return CGRectMake(222, 880, 40, 40);
}
else {
return CGRectMake(350, 625, 40, 40);
}
注:[mpPlayerビュー]のサブビューのセットはiOSバージョンごとに異なるため、これは回避策としてのみ考慮してください。これがiOS6で機能し、iOS4.3でクラッシュするという保証はありません。