3

iPad アプリケーションでマスター/ディテール アプリケーション テンプレートを使用しています。
ビデオのリストを含むマスタービューがあります。リスト項目を選択すると、詳細ビ​​ューでその項目のビデオの再生が開始されます。
MPMoviePlayerController を使用してビデオを再生しています。
全画面アイコンを押すと、プレーヤーは画面全体を埋める必要があります(詳細ビューだけでなく、マスタービューと詳細ビュー)。
どうすればこれを行うことができますか? 助けてください!

4

1 に答える 1

10

MasterViewcontrollerのデリゲートを使用して非表示または表示できますUISplitViewController

- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation

- (void)splitViewController:(UISplitViewController *)svc willShowViewController:(UIViewController *)aViewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem;

- (void)splitViewController:(UISplitViewController *)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)pc;

アップデート:-

コード例:-

DetailViewController.hクラスに1 つのBOOL値を設定します

@interface DetailViewController : UIViewController <UISplitViewControllerDelegate>

@property (nonatomic) BOOL  IShide;

そして、この次のメソッドを.Mクラスに実行します

-(void)hideMaster:(id)hideState
{

    _IShide=!self.IShide;
    [self.splitViewController.view setNeedsLayout];
    self.splitViewController.delegate = nil;
    self.splitViewController.delegate = self;

    [self.splitViewController willRotateToInterfaceOrientation:[UIApplication    sharedApplication].statusBarOrientation duration:0];

 //also put your `MPMoviePlayerController` Fullscreen Method here
}

#pragma mark - Split view

-(BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation
{
    return self.IShide;
}
- (void)viewDidLoad
{

    UIBarButtonItem *Fullscreen = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"FullScreen", nil) style:UIBarButtonItemStylePlain target:self action:@selector(hideMaster:)];
     [self.navigationItem setRightBarButtonItem:Fullscreen animated:YES];
    [super viewDidLoad];

}

フルスクリーンイベントをクリックしている間MPMoviePlayerController、このイベントでこのデリゲートを呼び出すと、MasterViewController の表示と非表示を切り替えることができます。

コード OUTPUT は

ここに画像の説明を入力

于 2013-08-14T06:55:14.813 に答える